Add initial version of LRU functionality.

TODO:
1) Documentation (including that 'next' pointers point to more recently used entries)
2) Cleanup of code
Refactor a bit to move CacheEntry and LruList to separate files.

TODO:
- Need to test that the lruList is not created if the cache does not have a maxSize configured.
- Cleanup
Move isExpired() method from the PromiseCache itself to the CacheEntry.
Change destroy() method to simply call clear() instead of maintaining things itself.
Latest build files.