Support mixed-kind records
Fix for new Set#=== in newer Ruby
Because breaking things is point releases is how Ruby rolls.
Implement dependent types, assert : A === B
LetBlock is just sugar now and not part of the AST
Exotic list annotation changes
Useful helper for the common typecheck cases
Refactor projection typecheck
implement as Location and use URI internally
Record projection by expression / type
Update to latest dhall-lang
* Allow selection from union Kind or Sort
* End of line is always \n (for multiline test case)
* Multiline of only blank lines should not error
Refactor builtins
The fill/unfill code is much simpler now
Normalize list element types before comparing
Allow typechecking filled builtins
Split Union and Enum
Stop putting special case conditionals for Union#value.nil? everywhere
and just split the classes.
Update handling of builtins
Always parse to a special value and not to variables.
Encode seperately.
Run all dhal-lang typecheck tests