Switch set to dictionary

As we're mimicing the rst directive options dictionary at that point. I
previously mistyped it as Python 2.7 set notation: {,} instead of
dictionary notation {:}.
Improve .gitignore files

To ignore some of the files/folders that have been floating around.
Add doc/example/changelog for template specialistaions

Thanks to rweickelt for the example contributed in the original github
issue.

Also started to format the changelog as recommended on
keepachangelog.com. More info is good.
Merge branch 'rweickelt-template'
Refactor makefile

To remove the awful repetition. I'm not well versed in Make so this is
my best effort. I think that the special cases have to remain special
cases as they vary from the norm. I can live with that.
Add QtSlots example & fix output

We have to treat slots like functions so when we come across one we use
the specialisated FuncMemberDefTypeSubRenderer so that we can function
arguments.

Otherwise we add an example and put it in the docs.

We also correct the 'Public Slot' to 'Public Slots' heading for the
slots section.
Update the changelog for Qt Slots addition
fix 'display_name' kwarg typo in directives.py

This addresses github issue #118 (KeyError: 'display_name'), which was
causing breathe (and Sphinx) to fail hard.
Add doc which exercises failing warning

It isn't exactly a test, really, but it does fail without the fix in the
previous commit.
Acknowledge bnewbold's contribution

Thanks for catching and fixing the bug in the warning generation.
Merge branch 'slots'
Merge branch 'bnewbold'
Only output defname if the declname isn't there

The defname is the definition name, whereas we'd prefer the declaration
name which is from the header file and is more likely to represent the
naming that should be in the API.

We also make the defname output emphasised like the declname output as
it seems to work and they are equivalent.
Add defname fix to the changelog
Merge branch 'defname'