Add a command line flag to change to using standard AsmPrinter

Specifying -hsail-asmprinter to llc will switch to using it, and
defaults to using BRIGAsmPrinter.

We by default register to the standard AsmPrinter, and if using the
default BRIGAsmPrinter, override the registration to avoid problems
from needing to share the command line option between multiple translation
units.
Add stub HSAIL target streamer
Remove pointless address space constant methods
Fix linker error for some build types on some systems.

It's not clear to me how this is working for every other target. The
other MCTargetDescs I've looked at all use the constructor
from the InstPrinter class, but none of them are specifying an
explicit dependency on the AsmPrinter library.
Switch to using some LLVM stream types.

Trying to solve some msan errors.
Hack libHSAIL to avoid ubsan error.

Storing everything in a subsection of a std::vector<char> isn't really
valid since the arbitrary other elements inserted have stricter
alignment.
Change arch name to be hsail64 instead of hsail-64

This needs to match the triple arch name. This was failing to match,
so this would default to the host architecture and triple. This just
happens to work correctly on Linux. For some reason, on OS X this would
result in some kind of inconsistency trying to use ELF sometimes while
set up for MachO, so hsail64 would always crash.