bugfix: UCS was broken

makeGatewayParams: 'ucssdk' case was in one switch() block, but not in the other.
	Only one switch() block kept.
add groups and logout support to SAML authn (#867)

The patch implements a proper SAML logout and adds tags with '$sgcn_'
prefixed to the name of the groups supplied by the IdP for the user
(similar to the way groups are handled for LDAP). The SAML attribute to
get the list of groups from is specified with the groupListAttribute key
in the $SAML_options in the configuration.
add some finish to the previous commit
UcsHandle instance has no attribute 'cookie', fix

This fixes the problem reported on the mailing list:
http://www.freelists.org/post/racktables-users/Getting-internal-server-error-while-trying-to-authenticate-Cisco-UCS,4

Quoting Jeff Silberman:
"There is no ".cookie" attribute. There's a "._cookie", but it's an
internal attribute. There are no public access methods for session
cookies, likely for security reasons. So it shouldn't have been there in
the first place."
renderNewTripletForm: debugging code removed
fix 'mac address 00000000000 already used' issue

l2addressForDatabase: empty all-zero address
commitUpdatePort: use nullEmptyStr func
SNMP: fix support of Cisco 2960S-24PS-L
SLB: display triplet config using ajax

renderSLBTriplets2: inject config preview button
getTripletConfigAJAX: format ajax response
slb_config_preview: js preview button handler
renderLocationFilterPortlet: add JavaScript to toggle children (#841)
display location drop-down list as a tree (#879)
renderLocationFilterPortlet: change form from GET to POST (#869)
bugfix: built-in hook functions were not called

registerHook: we need to inject built-in callbacks into array in all
modes
slb: fix equal ports, multiple protos issue

generateSLBConfig2: index VS instances by proto-ip-port, not ip-port
bugfix: exception when no checkboxes are selected

genericAssertion: new argument type 'array0'. Useful for array of checkboxes
createTriplet: use array0 genericAssertion
saveQuickLinks: No more exception when no checkboxes are selected
doVSMigrate: idem
make tag name regexp easy to maintain

lexError1: format most popular non-printable chars into escape sequences
getLexemsFromRawText:
	- count lines in single place, process character before counting a line
	- FSM change. Every character except \n is correct when collecting a name.
	  After collecting, the entire name is validated with validTagName

TAGNAME_REGEXP, AUTOTAGNAME_REGEXP, validTagName moved into functions.php
TAGNAME_REGEXP weakened a bit
arePortTypesCompatible: speed up using static map
printObjectDetailsForRenderRack: PHP notice fixed
hooks reentrance fix

universalHookHandler: $hook_propagation_stop is now a stack
stopHookPropagation: idem
slb: ability to override rs list

macroParser::getRSList: wrapper around getRSListInPool
generateVSSection: prototype changed