Fix issues with INSTEON lights in web interface

INSTEON lights are treated differently in the web interface versus X10
lights, for example: they get different icons, and cannot be dimmed or
brightened. This patch does the following:

- Use the same light icons for INSTEON lights that are used for X10
lights.

- Allow dimming/brightening of INSTEON lights by clicking on the left
or right side of the icon in the web interface (only dimmable light, of
course).

- Fix a logic error that prevents disabling the button image cache. Ran
into this while creating new icons for my web interface.

- As an experimental "feature", and a small delay to try to give MH a
chance to receive the new state of an INSTEON device changed through the
web interface. This will allow the correct state to be displayed when
the web page renders again. Disabled by default since it's just a hack
(though it works good enough for me).

Comments welcome.
Fix issue #224. WeatherBug - Mixed case city search corrections

Removed debug flag override; was unable to effectively set debug from .ini or web interface
Eliminated lowercase conversion of city name
Modified forecast city search API call to use lowercase
Modified forecast city match to ignore case
Added additional debug logging for forecase city match
Merge pull request #225 from mstovenour/fix_issue_224

Fix issue #224. WeatherBug - Mixed case city search corrections
Fix issue #227.  Remove weather_aws.pl - serive is not longer available

Use weather_weatherbug.pl or internet_weather.pl as an alternative.
Merge pull request #228 from mstovenour/fix_issue_227

Fix issue #227.  Remove weather_aws.pl - sevrice is no longer available
Merge remote-tracking branch 'peloy/fix_issue_212' into fix_issue_212
Updated Insteon state definition for new Insteon object model

Moved responsibility for Insteon states out of http_server.pl and
into the Insteon objects themselves. (i.e. Insteon::DimmableLight)
The existing code was not working with the new object model.  This
is an additional fix for Issue #212.

Open Issue:  http_server.pl->button_action() probably needs to
be modified so Insteon lights dim/brighten correctly.  It
doesn't look like is_dimable() was ever implemented for any MH
object.
Corrections for setting Insteon device states for web

Flip order of on/off states to match new web object model
Used the set_states() function rather than directly
modifying data from the Generic_Item class.
Eliminated the save/restore of the "states" array.  I'm
not sure what the original pupose was but saving/restoring
prevents users from defining additional states in their ini
file.  Note that the current device "state" is still stored.
Make sure web icons show 'on' if light state is 100%
Better set of states for insteon_menu_states given new behavior
Fix issue where setting level 100% sets to 0xfe

Changed each instance of this calcualtion to use 5/4 rounding prior
to calling sprintf().  There is some issue between perl data types
and the C sprintf() implementation.  In this case perl will print
255 but sprintf will return fe.  Some instances of this were
previously fixed by adding check logic to force fe or 254 to 100%.
I modified all the instances to be consistent.
Make sure web icons show 'off' if light state is 0%
Merge pull request #231 from mstovenour/fix_issue_212

Fix issue #212 - Web can not dim/brighten Insteon lights
Fix issue #232:  fix automated version check

Modified to match recent changes to docs/download.pod
Modified to make revision optional. (i.e. 3.0 R1). If revision
is not present then don't print "revision unknown".
Updated syntax to eliminate perl warnings
Merge pull request #233 from mstovenour/fix_issue_232

Fix issue #232:  fix automated version check
Merge branch 'master' into running
Insteon: Reorganize Structure for Generating Voice Commands

Generate_voice_commands in Insteon.pm now calls get_voice_cmds for each object.
get_voice_cmds is written to be inherited and modified by higher level objects
This allows for unique voice commands to be added to objects in their respective class files without messing with the base Insteon.pm file.

This commit merely copied over the voice commands as they existed before with little to no changes in the voice command design.

Fixes hollie/misterhouse#181
Merge branch 'insteon_voice_cmds' into running