Re-packaged for composer + packagist

I have re-structured this so it follows PSR-0 to work with composer and pushed up to packagist. Obviously, changing the class names etc. will be very breaking for existing projects but this does make it much more convenient to include on current projects.