Port tests to use live server rather than mocks

This also fixes various inconsistencies in the tests and accounts for
a stateful server.

Fix #459

Signed-off-by: Byron Ruth <b@devel.io>