Made it PSR2 compatible, added composer, made it all object oriented, and added caching hooks. - BC-Breaks!