Options/Common: remove defaults for ssl-key/ssl-cert on the Client

With these default values it is impossible to remove the ssl key and ssl cert
from the configuration and use password auth. Configuration options could not
be condensed in Bcfg2.Options.Common, because Server and Client needs
different default values.
InfoXML: <Path> filter should match on realpath

When using altsrc the name of real file created on the client is now
in the realname attribute of the entry. The <Path> filter in the info.xml
should match theses if available to set different permissions for
the different files created by one template with altsrc.
testsuite: add test for InfoXML matching for altsrc entries
Options: add missing communication:protocol options

The option was there in bcfg2-1.3.x and is still documented (maybe it just
got lost during the options rewrite).
doc: remove default values for protocol

If hard code the default value in your configuration file, it will not change
if the default value will change in the code.
Options: change default communication protocol to xmlrpc/tlsv1
doc: Add 1.4.0pre2 release notes

Signed-off-by: Sol Jerome <sol.jerome@gmail.com>
YUM: Add options to enable and disable Yum plugins

Adds two options you can define:
* disabled_plugins: A comma-separated list of plugins to disable
* enabled_plugins: A comma-separated list of plugins to enable

This allows you to run bcfg2 with certain plugins enabled or disabled
when they're not set that way in the yum configuration.  This is
useful because the Bcfg2 YUM plugin is initialized before it can read
in any files that might overwrite yum plugin configuration.
Client/Proxy: use keyword arguments to match the correct order

The XMLRPCTransport __init__ method defines several arguments with default
values. The current call missed the use_datetime argument, so that the
client_timeout will set the use_datetime paramenter and the protocol option
was used as timeout (does not work, because a float is required and raises
an exception).
Set option types on YUM/RPM list options
removed python 2.6-ism
Fixed py2.6-ism properly
Fixed client tool tests on systems without /bin/true
testsuite: Added unit tests for new option parsing
fixed some places where plugin loading should fail silently
call shutdown on subcommand registries
testsuite: better debug capturing for options tests
DBSettings: fix up <repository> in database name
Options: ensure <repository> macros are always fixed up

This fixes several cases in which <repository> macros would not be
properly processed: options that are not added to the parser yet when
early options are parsed; and config file options whose default value
is used.
testsuite: unlink temporary files

This cleans up the temporary config files created by the option
parsing unit tests. Courtesy Alexander Sulfrian.