middleware src & dest optionally as functions

See #210. This is a flexible solution that doesn't break the current API for string paths. It allows one to provide functions that return file paths given the request path. Usual case for these will involve some string replaces on the request path.

P.S. - How are you generating the markdown docs? Seems to come from the JSDoc-style annotations, but I didn't see any scripts.