Cleanup lots of stuff, use classes
Merge pull request #7 from mirego/feature/classes-cleanup

Cleanup lots of stuff, use classes