Add persistence support to gdb-server

When started with -m, or connected with 'target extended-remote', the
GDB server will not terminate upon disconnection from GDB, instead it
will begin listening for conenctions again.

Starting with extended-remote also has the advantage of allowing 'run'
to be used to reset the target and begin again.  Unfortunately, 'start'
is not working properly, as it does not send a reset packet (R), so it
complains when it tries to access memory before it is connected to the
target.
Make persistent flag part of st_state_t

This means passing entire state struct into serve.
Merge branch 'master' of github.com:prattmic/stlink

Conflicts:
	gdbserver/gdb-server.c