A flexible way of describing MSan memory layout details on various platforms. No significant functional changes, but the memory layout description that you get at verbosity=1 looks slightly different. This change includes stronger sanity checks than before.
The goal of this change is to allow more than 2 application memory ranges for https://code.google.com/p/memory-sanitizer/issues/detail?id=76.
I don't have an easy way to verify that I did not break freebsd or mips, though I tried not too. I'd appreciate if you verified that layout descriptions for those platforms are accurate.