fix exception and try to handle errors a little better?
though request lifecycle on client still needs a lot of work derp