new feature: auto tabindex

Tabindex, in most cases, had incorrect index. Some forms had no
tabindex at  all. Now tabindex_auto.js append tabindex to all
elements by jquery selector ":input, a[name=submit], a.input".
MAC Address List format unification

deviceconfig.php:
        xos12ReadMacList now returns mac address in cisco like format
Merge branch 'maintenance-0.20.x' of github.com:RackTables/racktables into maintenance-0.20.x
Merge branch 'maintenance-0.20.x' of github.com:RackTables/racktables into maintenance-0.20.x

Conflicts:
	ChangeLog
Merge branch 'maintenance-0.20.x' of github.com:RackTables/racktables into maintenance-0.20.x
fix linkstatus display for splitted Huawei ports

vrpReadInterfaceStatus: get only significant part of portname
example:
Huawei 7800 may return portname such as '40ge1/0/11:1(10GE)', but we
need only real port name ('40ge1/0/11:1')
Merge remote-tracking branch 'origin/maintenance-0.20.x' into local
add HP JE009A
readChapter(): make PHP sorting case-insensitive

Since the commit 4aa8609 the function had no ORDER BY in the SQL query
it uses to retrieve rows from the dictionary chapter because the wiki
link parsing has to be performed before the sorting. asort() was
put in place to do the job, however, its processing is case-sensitive by
default.

This change makes asort() do case-sensitive sorting for consistency with
other functions that deliver rows from the database in the exact order
of ORDER BY.
SNMP: add more Brocade and IBM switches

* Brocade ICX-6430-48
* Brocade ICX-6450-48
* IBM System Networking RackSwitch G8000
fix 802.1Q config reader on Huawei VRP 8

The output format of command 'display vlan summary' varies depending on
the number of VLANs in system. It does not show the VLAN list in case
there are many of them.

So vrp85Read8021QConfig has turned to parse the running config output
(lines "vlan batch ...") to collect VLAN ids.

vrp85TranslatePushQueue: do not execute useless "display vlan summary"

iosParseVLANString: always return int values. Before there were
ints/strings mixed (single items were strings, range items were ints).

Thus the vlan list became empty.
don't allow to turn objects into locations (#1339)

Locations, rows and racks are special in that normal object management
should work around them even though they are represented in Object
table. This was properly implemented when adding new objects but object
properties editor allowed to set object type to a Location-specific
type, which was a bug.

This change factors the existing object type filter out to a helper
function and makes both forms use it.

* withoutLocationTypes(): new function, the helper
* renderAddMultipleObjectsForm(): use the helper
* getObjectTypeChangeOptions(): ditto
init.php: handle glob() result carefully (#1273)

...otherwise it sends warnings out to FastCGI stderr and breaks images.
add HP J9450A
permit comma as tag characters
tags input: not limit output if "*" specified
fix missing semicolon
add support of IPv6 to telnet

Now, by default telnet use any family. Protocol can be specified by -4
and -6 options.