Add an optional<T> class.
Change data store lookups to return optional<data>.