Updated Storage trait to call a "changed" method to allow more extensibility.
Created MapStorage for a simple Map-based implementation of Storage.
Created Unique to create UUID-based ids.