Zeroconf support for headless server

Allow flask server to broadcast over public ip. Use Zeroconf protocol to publish the service (using avahi), allowing any client with Zeroconf to search and connect to any Freeseer client on their network.
I think the default action is 'store', and you can avoid `int(...)` later on by setting `type=int`. Furthermore I think `argparse` will also automatically add '-t' if it sees '--timeout'.