Dat first checkin. At the pub and unable to composer anything so haven't been able to run tests.
First working version.