Initial socket error test
Remove code duplication from gntp.config

By taking advantage of **kwargs we can remove a lot of the code
duplication. To support this, we add a notifierFactory method to our
mini method though we have to put the mini method at the bottom of the
source file now, to ensure GrowlNotifier is defined.

Fixes #33. Thanks @xdgc
Move Exceptions into their own module
Catch socket errors and rethrow as a GNTP Error
Swallow Exceptions when using the "mini" growl function
Update egg
Move __version__ to it's own module
Switch to using GNTP errors for everything

The mini function is supposed to be "fire and forget" so we will always
swallow errors (but log them). For the notifier functions we'll always
return a gntp.errors.BaseError to make it easier for implementing
programs to have a single error they can test against.

Merge branch 'socket-error-tests'

Conflicts:
	gntp/__init__.py
	gntp/notifier.py
Fix building docs
Remove egg data

Though I have not been able to find a source that stated as clearly as
I would prefer, it seems like this information is NOT required to
support installing from pip with a git repo
Update version to 0.9
Update readme with a note about icon and notification center - related with #36
Add support for custom headers with notifications

Fixes #22
Testing fake hash method requires password. Refers #38.