Initial commit with working version and most extensions and combinators.