Debuged "sync links" and "sync all links" for i2CS
--lib/Insteon.pm
Added some POD documentation for the functions I studied
Added missing link to interface and unlink from interface tie_event for controllers
Added PLM voice command "initiate linking as controller" to support half-automated i2 device linking
Renamed PLM voice command "show link table to log" to "log links" to match the device voice command.  Compatibility WARNING:  If your code uses the old PLM voice command you will need to change your code to the new command.
Updated get_object to return a match on the base device if there are no matching groups
--lib/Insteon/AllLinkDatabase.pm
Corrected rather nasty "adlb" typos to "aldb" as reported by krkeegan
Added additional state logic to fix "sync links"
Fixed flag logic
Added health=good and inuse=1 properties for PLM aldb
--lib/Insteon/BaseInsteon.pm
Added additional state logic to fix "sync links"
--lib/Insteon/Message.pm
Added logic to ensure message always contains a flag byte even if hop_count==0
--lib/Insteon/MessageDecoder.pm
Renamed user_user_reset to plm_user_reset
--lib/Insteon_PLM.pm
Added support for processing plm_user_reset.  There is no code action associated with the message but it doesn't hang the interface either
For initiate_linking_as_controller changed default group to 01 rather than FF to match how the PLM creates the same links when linking manually