Big update - basically added interfaces, something missing from before

 + I've added interfaces for everything, except UTIL-class

 + I've borrowed phpcs and phpmd settings from Anthony Ferrara as an example
   to start with from now on.

I know this 'build' is broken - there are tests to rewrite, scripts to rewrite
but this is a start to something much better, promise.