Refactored into multiple files, fixed test for latest mocha, fixed res.end bug and process.nextTick bug, new features

Hi,

I refactored router.coffee into multiple files - one for each class (Compiler, RegexExtractor, ...) and I also fixed the tests to work with the latest version of mocha

There was also a bug with res.end which caused breakage with any script that tries to pass a parameter to res.end - I fixed that.

I'd like to add some features to flask-router so I had to do the refactor - I couldn't add any new tests so I decided to do some spring cleaning :)

I hope the whole bunch of commits isn't overwhelming - I probably should've made a separate branch for the separate features but things were kinda dependent on eachother