`cast` now works well at runtime, however it's not plugged into the type checker to communicate the type that's being cast.
Pull request: 78Commits: Type checker understands cast Use `cast` for contract generation