Whitespace cleanup per https://secwiki.org/w/Nmap/Code_Standards
Wrap long lines
Avoid creating new lookup tables with every call

Making big lookup tables local to the file, not the function, saves
creation and destruction of new tables with every call.
Some unpacking efficiencies
Merge pull request #2 from bonsaiviking/enip-fix

Enip fix via Bonsaiviking (big thanks) -- tested all changes, works as previously designed.
Whitespace-only cleanup (indent, trailing)
Fix globals, word wrap at 80 columns
Refactor vendor lookup to reduce table creation, code duplication
Allow script to continue if source port cannot be bound, but warn.
Clean up return values in action function
Clean up error handling
Support UCS-2 encoding for BACnet
Merge pull request #3 from bonsaiviking/bacnet-changes

Mergeing after testing, Everything works as expected on multiple devices.