Push State functionality for static server

Add push state handling when using the static mode, for developing client side
applications with client side routing.

Added as -P option in the cli, to be used with -s.

What it just does is check if the request path is an existing file, and if it
isn't it will return the root path without redirecting to let the client handle
the routes.