Add swizzles to math vector types.
Make read methods for buffer_stream_t const.

Also add doc comments.
Add doc comments for hash functions.
Doc comments for Sparse implementation.
Add cassert as default include.
Doc comment for snow namespace and string alias.
Move some things around. Also, doc comments for vectors.

Namespaces are no longer defined by the headers the inline vector
sources are included by and are defined in their respective files. This
is mostly to stop Doxygen from getting immensely confused, but it also
cleans up the headers a bit.
Add a universal option to the premake4.lua file.

Allows the creation of universal libraries with this. Note that you'll
probably have some problems with fat files as a result.