Convert Docfile to a Struct

...and remove the explicit class just defining it in Repository::Path
...and remove all the fields except name and dir?, which are the only
ones currently used

Switch the #dir? to #is_directory because the question mark is not
supported in Ruby1.9 in Struct.
Extract text mime type check into Path

Since we are only ever checking if the file is text, I am extracting
that out into the Repository::Path instead of letting the Server know
the details of what makes a text file.

This should also ensure that the check for a text file is consistent
where ever it is done.
Update directory listing to include hidden files

Also added an explicit sort to the listing, which ignores any leading
'.'s on the filenames.

I think that this Fixes #40