Initial try.
forgot files..
Adding unit tests for new classes.
Merge branch 'feature/issue225' into develop

* feature/issue225:
  Adding unit tests for new classes.
  forgot files..
  Initial try.