Implement auto alias (N4035) for variables and return type deduction.
  - currently allowed in unions
  - does not use explicit ctors or conversion operators
  - can be turned off with the noeval hack
  - does not get triggered by decltype(auto)

See test file for concrete examples.