clearer English for README.md, change 'Singleton' to 'Caching and Integrity'

Hi, 

I've tried to improve some of the documentation with clearer English.

I've also changed 'Singleton' to 'Caching and Integrity'. Singleton as a concept means that only ever one instance of an object is instantiated (for example, in prototypal inheritance the prototype or a manager would ensure that new Foo() was only ever called once). I think you meant to use Singleton to indicate that model instances are cached and the same instance is passed out whenever it is requested, which is a different idea - more to do with data integrity.

I hope these suggestions are okay. Let me know if you'd like anything changed.

Cheers,
Nicholas