a la cache

This adds an example of case classes a la carte where instances (and their extractions) are memoized, saving heap usage (and in the case of repeated extraction, churn of `Some`s).

May want to cache the REGEX to avoid having it recompiled on each instantiation