Single files can now be exposed in addition to dirs

This solves the problem of serving dirs when only a file is needed.
The tests for the FileEndpoint have been changed to reflect serving both directories and files.

Once merged, this will close issue #20