Allow type aliases for object type literals

This PR removes the (artificial) restriction that type aliases can't reference object type literals. See #998 for the full discussion.