Fix type aliases so that we can alias a type declared with a module,
that is something like, typealias element = Element.element.

Introduce logical connectives andalso and orelse.

Fix assertion expressions so that the expression can be given a name
that can be used within the Q assertion.