Modularize

This PR resolves #57.

It includes the following changes:
**Modularize functions**
Each of the fast methods has been given it's own file. `lib/index.js` requires these files. Each file's dependencies (i.e. `applyWithContext()`, `bindInternal3()`, whatever), are required by that file itself. This allows developers to `require` individual files one by one, should they want. Particularly, this is great for Browserify users who just want to use a small portion of the library and are conscious of file size.

**Building for browser**
The `browser-dist` script in package.json has been changed to Browserify with the 'standalone' option. Browserify resovles the `require` dependencies and exposes a global `fast`.

**Code coverage**
I implemented a few missing tests, so code coverage is now 100%. The only odd thing to me was that `partialConstructor` tolerates returning functions. Not quite sure what the use case there is, or if the tests correctly cover whatever that may be.