PSR support

* PSR-1 and PSR-2 compliant
* PSR-4 for autoloading