librustc: Accept type aliases for structures in structure literals and structure patterns.

Closes #4508.

r? @nick29581