Better support for Composer

Added a more info to composer.json that most libraries use. Including enforcing that the installing system have the mcrypt extension enabled: http://getcomposer.org/doc/02-libraries.md#platform-packages

Libraries should not version composer.lock. Read more here:
http://getcomposer.org/doc/02-libraries.md#lock-file
http://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file

Libraries also should not distribute a copy of the composer binary.

Also changed the phpunit binary to be installed in the project's bin dir. This is a little more conventional than digging into the vendor dir to get it.

EDIT: I've added the following things to this PR:

* Rebased the branch against latest master and resolved merge conflicts (mostly README stuff)
* Project now uses Composer's autoloader instead of custom autoloader.
* Removed your custom `bin/runtests` script because this is now handled by simply executing `phpunit` from the project root.