- Support singletons (see types/issue for a good reason)
   - add documentation!

