Model: create definitions with new declarative models.
Model: documentation added.
Model: removed old model classes
Model: old model implementation completely replaced

Fixed: issues concerning python 3 compatibility
Refactoring: some classes renamed

RestResult and Models merged into class Model