Add initial Typescript support (not quite functional yet)
Merge branch 'master' into feature/typescript
tsc requires input files with .ts extension
Merge branch 'feature/typescript'