Make the Cache replaceable.
Make DefaultCache static
Removed method to get first element