Merge upstream and bump to 0.4.1 - add wildcard hostname support.

Wildcard hostnames are now supported in Keter, with partial RFC2818 support.

Wildcard hostnames can have exceptions, can be specified at arbitrary depths,
and are non-recursive. `*.example.com` will match `foo.example.com` but not
`foo.bar.example.com`. Likewise, `*.*.example.com` will only match the latter,
not the former.

The keter.cabal is modified to build the example app.

Internal string usage is made more homogeneous to use Data.Text. Despite this,
internationalized domain names are not yet supported unless entered in config
files as punycode.
Support fully qualified domain names ending in a dot.
Block entropy 0.2.2.2 as it fails to build on my system.
Merge in upstream
Fix up HostManager to use LabelMap, alter LabelMap to use ByteStrings.
Add checks for explicit assignment in HostManager with support in LabelMap.
Add simple keter bundle tests with wildcard assignments
Implement a simple battery of tests for wildcard hostnames.
Add cleanup operation to prevent growth of LabelMap over time.
Increase the number of tests, removing every app bundle in reverse order.
Remove tracing from LabelMap.
Merge pull request #25 from AaronFriel/master

Wildcard hostname support for Keter