Adds a persistent Sandbox for evaluating code

Uses a custom sandbox object to attach a context for any code being executed. This sandbox will store a JS context between eval executions. It prevent global name space pollution.

Adds ability to send non JavaScript commands such as `/reset` (Only command supported so far).

Reset command will create a new sandbox environment and garbage collect the last one.

Shouldn't we gitignore the build files in `dist/`?