cleanup + tests

Hi rscada-team,

changes:
* code separated in one file per class
* few things ported to python 3
* MBus constructor
    * automated tests added
    * added a few things to make the code more robust

Cheers,
tpltnt