This patch addresses the review comments on r352930:
- Removes redundant diagnostic checking code
- Removes errnoneous use of diag::err_alias_is_definition, which turned out to be ineffective anyway since functions can be defined later in the translation unit and avoid detection.
- Adds a test for various invalid cases for import_name and import_module.
I think this should be a separate commit, and I'd recommend updating it to 4000 to give ourselves more wiggle room.