fix(modules): use module names without .js

This is important so that relative paths work
also when someone else imports this module.
feat(watchgroup): add support for "methods" in EvalWatchRecord

This adds some basic support for methods. However, it is not clear whether or not methods actually
need to be distinct from regular functions in the JavaScript port.

Closes #2