added type hint for type-family usage of promote. cleaned up deprecated ...

...smart constructors

fixes #3