Further split out stuff into different classes

Signed-off-by: Patrick Van Brussel <patrick@inuits.eu>
Merge pull request #1 from VuokkoVuorinnen/master

Further split out stuff into different classes