Introduce new error codes to the gen_lockstep
behaviour, `server_error` and `client_error`.

Server error is returned when the server responds
500..505, and client error is returned when the
server responds with 400..500.

Also introduce a new return from `handle_event`,
which is `{connect_url, NewUrl, State}`. This
makes the `gen_lockstep` process connect to the
NewUrl, making it possible to change URLs without
exposing config variables to lockstep.
Add whitespace for readability.
Add tests for URL function, `client_error` and
`connect_url`.