Merge pull request #10 from 3v1n0/master

Add PWS Weather support
Split 'weather.ini' into config and status.

There are now two files, 'weather.ini' and 'status.ini'. The former is
used for configuration stuff and the latter to record status such as
last update times. It should not need to be edited in normal use.

This is quite a substantial change, and may have broken something I
haven't found in my testing. Let me know if there are any problems.

The documentation has yet to be updated.
Updated documentation following split of weather.ini
Added hour_diff template function.

This returns the difference between any data value and its value an hour
ago.
Added a 'yowindow' template.
Added ability to set 'flags' for templates.

The only flag recognised so far is 'L', for 'copy to local directory
instead of uploading'. It can be applied to text or graph templates. To
set a flag, replace the template file name in a task list with a tuple
of file name and flags. For example:

text = ['24hrs.txt', '6hrs.txt', ('yowindow.xml', 'L')]
Reinstate 'RapidFire' updates.

I removed this from my copy of pywws as part of some other experiments,
and should not have commited it yet.
Added template 'flag' T for Twitter.
Removed toservice.py "rapid fire" mode.

There is now a second config file for Weather Underground's rapid fire
mode. Use 'underground' for normal updates, 'underground_rf' for rapid
fire. The documentation has been extended to cover this in more detail.
Documentation update.
Bug fix in pywws.Reprocess
Fix example templates month error.

The example templates that use monthly data could show the previous
month if "day end hour" was set to between noon and midnight. A simple
calculation prevents that from happening.
Corrected command line in documentation.
Final tweaks before next release.
Extracted common parts of 'live' and other tasks.

Also found a bug introduced in commit ca0d137 that stopped 'live' data
being uploaded to services (they'd get the most recent logged data
instead).
Move import of low level USB module.

It was being imported in the CUSBDrive constructor (to allow runtime
choice of library, but that's been dropped) but is now imported at the
start of the module like everything else.
Changed Twitter library.

The tweepy library has been retired, so changed to python-twitter
instead.
Dropped use of Sphinx-PyPI-upload.

Now uses the more widely installed setuptools instead. This should have
no effect on anyone but the project owner (Jim) as no one else has
permission to upload to PyPI anyway.
Added function prototypes.

This should make the ctypes calls of hidapi functions a bit safer by
ensuring all arguments are converted correctly.
Make proper use of hidapi function return values.