Feature/dataset versioning

Adding support for datasets to have versions. 
1)Dataset Type meta data will store the latest version for a dataset type.
2) Version for Upgrading to new dataset type needs to higher than the latest version for the dataset type existing in the system.
3) REST API to get the latest dataset version is also added.
4) Dependent changes were made by implementing the getVersion method.

https://issues.cask.co/browse/CDAP-483
when the type (part of module) is in separate jar that is deployed separately and we try to load the dataset , we could not load the class . since we were using modules only internally , it made sense to use DEFAULT Version for that case, but not needed to return the version for any other exceptions.