Add UMD support

This isn't ready for merging, but rather a place to start the conversation and move towards adding support for different module loaders.