Complete rewrite of coraljs in typescript + Move to public repo