v0.9 rewrite - all about API and performance

This pull request will form the basis of v0.9. It's based on @alexandrnikitin's pull request (#41) which rewrites most of the code to [greatly improve performance](http://jsperf.com/strftime-optimization) and cleans up the sprawling API as well.