Move the websocket service to the shell

It's a first step to make html activities much lighter. It also
just makes a lot more sense to have them interact directly with
the system rather than proxying through the python activity.
Rework HTMLActivity to not inherit from Activity

This will make the activity use less memory and start faster.
Use a relative path in the activities url

It's just a bit cleaner.