[MSVC Compat] Implementation of __unaligned (MS extension) as a type qualifier
This patch implements unaligned as a type qualifier; before that, it was
modeled as an attribute. Proper mangling of unaligned is implemented as well.
Some OpenCL code/tests are tangenially affected, as they relied on existing
number and sizes of type qualifiers.
Differential Revision: http://reviews.llvm.org/D18596