static file server, proper unicode handling, more error checking