Extend the XP type system

This pull request implements xp-framework/rfc#266 and implements:

* [x] Wildcard types
* [x] Type::newInstance()
* [x] Type::cast()
* [x] Type::$default