Improve generated schema and code quality.

This pull requests introduces:
 * compliance to PEP8 and overall formatting improvements
 * unittest for most functionality
 * improve the schema to avoid clashing IDs
 * Better packaging of RPM and new DEB packaging
 * Improved documentation