Clean up. 

cleaning out EOFs and replace with define_method and define_singleton_methods.

Next, I'm planning on breaking up the cacheable.rb file into separate lib files