should be printable. easy to add elements of different types `schema.add(element)` elements should be fetchable by: `schema.find(Type)` or something similar