Fixes behavior of AMD dependencies.

I've installed Sinon via Bower, but I cannot include it into my project without properly exporting the sub modules and attaching the main entry point correctly.

- Switches to Simplified CommonJS AMD syntax which allows code reuse
  with Node.
- Adds define call to each module.

All tests pass.