Context argument for changelog functions

With this change one can do this:

    changelog('# Installing {vhost} ({name}) in {home} via Fabric', ctx)

Instead of this:

    changelog('# Installing {vhost} ({name}) in {home} via Fabric'.format(**ctx))

I found, that ctx is needed almost for each changelog call.
Merge pull request #2 from sirex/master

Context argument for changelog functions