preserve insertion order for DefaultConditionThings
remove unused generics
add Thing, extension of Things that allows for only one entry
support storing metadata for objects
Add more conditions and tests for Things
Add a base Adapter that can take one or several as items