Fix #802: While(true, body) should always typecheck as NothingType.

This also uses a pattern match instead of an == because it
avoids the allocation of the BooleanLiteral and the virtual
dispatch of ==.
Merge pull request #805 from sjrd/fix-while-typing

Fix #802: While(true, body) should always typecheck as NothingType.