Initial project setup
New interfaces SelfDescribing and Description