basic ajax support. but prob should use websockets