Proto2js

Fixes #11 and #5