Split File/Directory handler functions to ease reuse

Split helps in reusing those handlers for alias based requests.
This helps in webkit where the /resources/* requests may need to be mapped to a directory that is not in the server doc_root.

Minor change in router.py to improve the logging