Clean up the build system properties and related code.

- Deduplicate getcompilerflags, getdependancies, getlinkerflags.
- Remove $NoPedantic (add -Wno-pedantic to $CompileFlags instead).
- Remove --enable-freebsd-ports-openssl and all related code (this
  will be replaced with --no-pkg-config=[name] in the future).
- Remove some unused build system properties.
- Remove support for caching third party include and library paths
  (can cause unexpected problems when they change).
Merge pull request #608 from SaberUK/master+buildprop-dedupe

Clean up the build system properties and related code.
m_spanningtree Remove SpanningTreeUtilities* fields and parameters
Create the CommandBase class from Command

The Handle() method is not part of CommandBase, making it possible to provide a different Handle() in each class derived from CommandBase
m_spanningtree Move all server-to-server command handlers into handler classes

These commands are not registered in or called by the core. To find the handler for a command the new server-to-server command table is searched first and if there is no handler (meaning the command isn't a special s2s command), then the core is consulted, as before.