Enable default database for _connect()

In the event you connect with a user that doesn't have it's own
database, set the default to be 'postgres' to enable _get_db_names()
to be able to collect the list of databases.
Merge pull request #461 from peterkh/master

Adding the ability to set keepaliveinterval and attempt socket reconnect on exception in _send_data
Merge pull request #459 from jbouse/feature/postgres-defaultdb

Enable default database for _connect()
Adding DRBD collector
ipvs.py: Add transport specifier to cluster name.

In some cases, for instance when loadbalancing DNS, it may make sense to
have both a UDP and a TCP cluster definitions servicing the same IP and
port on both transport protocols. This was poorly supported before, as
these two clusters' values would be published to the same metric.

This patch prepends all cluster names with their transport protocol and
an underscore, to allow this distinction.
ipvs.py: Also collect current connection counts.

This patch adds collection of the current counts of active and inactive
connections, both per backend and the total counts for the virtual
instance. This depends on an additional run of ipvsadm, as this info
cannot be obtained simultaneously with the --stats argument.

Please note that for setups using Direct Server Return, the active
connection counts will tend to be zero.
netapp inode collector (current inodes and max inodes per volume)
fixed docstring
Merge pull request #467 from faridsaad/drbd_collector

Adding DRBD collector
Fixes #460, this documents the required version of pyasn1
Doc updates
Fixes #465, this fixes the code to properly pull in the correct default values to pass to the graphite handler
Merge pull request #470 from peterfisher/master

Netapp inode collector
Merge pull request #469 from nyerup/master

IPVS collector: Add transport specifier to cluster name, also collect current connection counts.
Re #469, this fixes the unit tests for the new format
Unused imports
pep8
Doc updates
Fixes #462, this fixes the virtenv logic to work correctly
Minor updates/additions/fixed for Diamond

src/collectors/example/example.py
  doc Update for simpler way for testing a module, especially those that require
  running multiple times to gather metrics

src/collectors/files/file.py
  New FilesCollector that will collect metrics from file(s) placed in a pickup directory
  options:
   'dir':     'The directory that the performance files are in'. Default /tmp/diamond
   'delete':  'Delete files after they are picked up', Default False
   'path':    'additional prefix added to metrics collected'.  Default '.' (don't add a prefix)

  File format is just lines of
  metricname.metricname.whatever:10.2
  another.value:12345

src/collectors/cpu/cpu.py
  New option 'normalize' (default false).  When set to true, 'total' cpu metrics are divided
  by the number of cores (so that total is always 0-100%)

src/collectors/diskusage/diskusage.py
  New option 'send_zero' (default false).  When set to true, metrics are still sent to grapite
  even if there was no IO during the previous period

src/collectors/diskspace/diskspace.py
  New metrics for _percentfree and inodes_percentfree