use integer mtimes to compare
make the coffeeify.compile easy to swap out for testing (might want to have safer dependency injection in the future)
added tests for caching