User realtime

did a bunch of clean up at the same time, still needs a little DRY work but it seems good to go.
for #39
The `{{id}}` here needs to be filled in with knockout I think?