A lot of changes, should have committed earlier =/

Signed-off-by: Jeroen van Baarsen <jeroenvanbaarsen@gmail.com>