Static Website serving and listing

adds
 trailing slash redirection
 index.html return
 templated directory listing

Signed off : Simon Kirkby <tigger@interthingy.com>
Indeed, flexibility is the key here.  where it is done is irrelevant. 

Serving static websites is one of the lowest common denominators. This kind of comes out in the wash becuase the /ipfs/ handler in ipfsHander.go uses a uio.NewDagReader.  It assumes files and folders from the outset. 

Perhaps it is a good idea to cook these indexes into unixfs ( or abstract fs ) and leave the web interface open to the many other data structures that a merkledag can represent.

This is a curly question...