refine use of "return" in functions.php

* isInteger(): don't use "if" where a boolean expression does the job
* isPCRE(): idem
* ip_mask():idem
* getPrevIDforRack(): idem
* getNextIDforRack(): idem
* ip4_bin2db(): idem
* acceptable8021QConfig(): idem
* validTagName(): idem

* l2addressFromDatabase(): dismiss a useless intermediate variable
* getRackCodeStats(): idem
* makeIPTree(): idem
* getLocationTrail(): idem
address assorted style issues in functions.php

* rectHeight(): don't reinvent logical OR with multiple if()'s

* markSpan(): remove excess parentheses
* cookOptgroups(): idem
* alterConfigWithUserPreferences(): idem

* ip4_mask(): don't use "else" after "return"
* ip6_mask(): idem

* getRSUforRack(): wrap a long line
* getRSUforRow(): idem

* pokeNode(): put longer of two "if" branches into "else"
* iptree_construct(): idem

* prepareNavigation(): remove excess code

* shrinkSubtree(): add a missing newline
* isConfigVarChanged(): idem

* getEmployedVlans(): eliminate "else" near "continue"

* strerror8021Q: don't reinvent an array with a switch block
* formatRealmName(): idem
fixup "if" condition in pokeNode()
fix two more ternary conditionals in functions.php

Aaron points the last change to these functions made them reinvent "?:"
with "if". Fix.

* formatRealmName()
* strerror8021Q()
factor some sign/comparison code out

There is a number of use cases in the code for the sign (-1/0/1) value,
all implemented with nested ternary expressions. Factor two helper
functions out and make use of them

* numSign(): new function
* numCompare(): new function
* IPCmp(): use above
* compareDecomposedPortNames(): idem
* cmp_array_sizes(): idem
compareDecomposedPortNames: fix numCompare call
restore the FileLink table
Introduce triggers to enforce various data integrity policies.

Several function calls were deprecated.

- commitUnlinkEntitiesByChild:
commitDeleteFile
commitDeleteObject

- commitUnlinkEntitiesByParent:
commitDeleteObject

- destroyTagsForEntity:
commitDeleteFile
commitDeleteRSPool
commitDeleteVS
commitDeleteVSG
destroyIPv4Prefix
destroyIPv6Prefix
deleteLocation
deleteRack

- releaseFiles:
commitDeleteRSPool
commitDeleteVS
commitDeleteVSG
destroyIPv4Prefix
destroyIPv6Prefix
fix a table name in TagStorage triggers
alter triggers to handle FileLink