A design pattern and micro-framework for creating UI components
Resolves promises in key-value pairs maintaining type information