Added support for sparse matrices. Added the possibility of using a head for the deep branch. Started with the examples
added test for schedulers. OneCycleLR test remains undone since there is an issue with v1.3 and pip+OSX
modified the code to default to Adam when multiple optimizers are used but some of them are not specified