Clean up server list

This rewrites the serverlist in Python with Flask, making the code much more readable.  It also adds extra data type checks (harder or impossible to break the list by not sending required fields, sending numbers instead of strings, and the like) and makes the server send it's data as multipart/form-data, which doesn't require url-quoting.

This is not extensively tested yet.