Initial commit. I have only tested it very minimally on OS X so far.