Expose classes, modules and methods to js

This PR is just for discussing names, will add proper test and checks later.