support histograms

in accordance with existing codebase, implement this in graphite
backend
clarify bins can be arbitrarily wide
support different histogram settings for different metrics
bugfix: allow bin upper limits to contain decimals

also modify an example to demonstrate
clarify histogram/bin categorisation algorithm
merge branch 'master'
add tests for histograms
examples: python: unbreak example

After Statsd -> StatsdClient renaming example is borken.
examples: python: unbreak StatsdClient.send()

send() is defined as staticmethod, so it' does not have self. Fixing
this also requires all other methods convertion to non-static which is
logical assuming the should all use self.addr set by __init__().
examples: python: remove local_settings.py overrides

It's rather strange to override parameters passed to __init__ via custom
settings file.
examples: python: host and port are not used
examples: python: print exceptio to stderr
examples: python: do not catch BaseExceptions
examples: python: more useful errors
examples: python: StatsdClient.send() returns outcome

It's useful but unused.
examples: python: simplifications
examples: python: use isinstance() to suport inheritance
exmaples: python: unbreak doctests
examples: python: whitespacing
examples: python: move frequently used imports to the top