Fix error when raising without an Exception.

Raising without a valid exception is invalid:

>>> raise
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: exceptions must be old-style classes or derived from BaseException, not NoneType
>>> raise Exception
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
Exception

Changing this to "raise Exception" fixes this problem.
PyNUT: Create a custom exception class.

This maintains backwards compatibility, and allows calling programs to
use "except PyNUTError" instead of "except Exception" when using PyNUT
methods.

See https://wiki.python.org/moin/HandlingExceptions for more
information.
Change format of raise keyword.

Fixes PyNUT Python 3 compatibility.
Added author information, bumped version.

According to the semantic versioning scheme (http://semver.org/), adding
features that do not break backwards compatibility with previous
releases means that the minor version number should be incremented.
Fixed version description.
HCL: add devices supported by nutdrv_qx

- Fideltronik LUPUS 500 USB
   Protocol: 'megatec'
   USB subdriver: 'fabula'
   Reference: http://lists.alioth.debian.org/pipermail/nut-upsuser/2014-June/009059.html

- FTUPS FT-1000BS(T) / Voltronic Power Apex 1KVA
   Protocol: 'voltronic-qs-hex'
   USB devices -> USB subdriver: 'cypress'

- FTUPS FT-1000BS / Voltronic Power Imperial 1KVA
   Protocol: 'voltronic-qs'
   USB devices -> USB subdriver: 'cypress'
Minor update and completion

Use the new Debian package tracker URL and add Redhat / Fedora bug
tracker
genericups: log cable type overrides as they are parsed

Fixes networkupstools/nut#28

Better than nothing, but without a unit to test against, I don't want to make
any more intrusive changes.
Fix compliance of NUT-Monitor FreeDesktop AppData file

Following the upstream update (by David Goncalves), update the
screenshots width and height to conform to AppData specification:
http://people.freedesktop.org/~hughsient/appdata/

Closes networkupstools/nut#127
tripplite_usb: fix voltage scaling for 240V/1001 (0.28)

Reported by Dave Williams:
http://article.gmane.org/gmane.comp.monitoring.nut.user/8713

The input.voltage and output.voltage scaling for Protocol 1001 did not factor
in the input_voltage_scaled value.
tripplite_usb: scale min/max voltages for SMART protocol (0.29)

Observed in a dump file from driver version 0.11. Scale input.voltage.minimum
and input.voltage.maximum the same way as other voltages.
HCL: add Tripp Lite OMNIVSINT800 (tripplite_usb)

Source: http://article.gmane.org/gmane.comp.monitoring.nut.user/8713
HCL: sort Tripp Lite models by name, then increasing power

I know this doesn't allow the cell merging code to do as much, but this should
make it easier to find models.
Merge pull request #129 from rshipp/python3

PyNUT: Python 3 support and better exception handling
Make ltrim() modify the input string

Also, always check string length in both ltrim() and rtrim().

Reference: https://github.com/networkupstools/nut/issues/154
Add ltrim_m()/rtrim_m() functions to trim several chars at the same time

Also, make ltrim() / rtrim() wrappers around ltrim_m() / rtrim_m().
nutdrv_qx: move to ltrim_m()/rtrim_m() functions
Fix default value of POWERDOWNFLAG

POWERDOWNFLAG path changed from the hard-coded value /etc/killpower to
the build-time generated @CONFPATH@/killpower. This resulted in an
unexpected value '/etc/nut/killpower', at least on Debian.
(reported by Laurent Bigonville)

Closes networkupstools/nut#74
Replace outdated references to shutdown.txt

shutdown.txt was merged into config-notes.txt during the AsciiDoc
conversion of the whole documentation and website. This content is now
available in the docs/config-notes.txt file, section [[UPS_shutdown]]
"Configuring automatic shutdowns for low battery events"
tripplite_usb: set input.voltage.nominal back to 230V (0.30)

Keeps the input.voltage and output.voltage scaling from 0.28

Discussion:
http://article.gmane.org/gmane.comp.monitoring.nut.user/8719