Parameterize how templates are retrieved

Dear Sergey,

I'm developing a system where mustache templates are stored in a database. I would like to use hastache for the templating. However hastache currently only supports loading templates from the file system. This patch parameterizes the way templates are read by adding the following function to `MuConfig`:

```haskell
muTemplateRead :: FilePath -> IO (Maybe ByteString)
```

It would be great if you could merge and release this.

Cheers,

Bas

P.S.
I don't care about the name of `muTemplateRead` . Feel free to come up with something better.