Create machinad.js

First commit. Still not happy about my grafting to global scope or grafting directly onto all functions. Will change this at some point to graft onto an arbitrary type which my combinators return, then a function will need to be return()ed to be lifted into the monadic context. Haven't gotten around to this yet though.