Throw proper parse errors, stop using `error`
Remove dead code
Remove dead code
Stop using `error` when constraining patterns and when instantiating source types
Merge remote-tracking branch 'evan/dev' into topic/ignore_main