Fix exception raised within exception code!

In the UnexpectedServerResponse exception there were two potential issues. One
where a string was possibly uninitialized and one where an exception was raised
if certain HTTP errors were passed in as the cause.
Allow Run#expiry= to accept Time objects as input.

This was previously only accepting strings. t2-run-workflow is updated to pass
in a Time object if the expiry time is being changed.
Add a deprecation message when require 't2server' is used.

Code should require 't2-server' instead as it is consistent with the gem name.
Remove the -h and -v switches from t2-run-workflow.

These have been moved to t2-server-cli.rb but were not removed from
t2-run-workflow at the time.
Rename Connection to ConnectionFactory.

This just bugged me for ages. It is a factory for connections, not the
connection itself.
Add connection-parameters classes.

A restricted set of options that can be set is specified in the base class
(ConnectionParameters). Some example, common sets of options, are also included.
Add use of connection parameters to the Server API.

Parameters can be specified, although they default to nil, and will be passed
through to the connection classes.
Add use of connection parameters to the Run API.

Run#create can now take connection parameters to configure a network connection.
Minor clean up of non-ruby-like URI handling code.
Use supplied parameters to configure SSL connections.

Options for peer verification and client authentication are all processed.
Connection parameters tests.

Any SSL connections are defaulted to be insecure as testing is unlikely to be
done against fully certified production servers.
Add use of connection parameters to the cli scripts.

A core set of options are added to the cli code and calling this now returns a
ConnectionParams object as well as credentials. All real work is done in the cli
helper code so updating the scripts themselves required minimal effort.
Fix Run#status to return state as symbols rather than text.

This fixes [TAVSERV-193].

It is an obvious fix as symbols are used internally anyway.
New tests for the new Run#status output.

Added for both v1 and v2 of the server releases.
Update of rdoc comments for new status symbols.
Merge branch 'rh/status' into rh/v2

* rh/status:
  Update of rdoc comments for new status symbols.
  New tests for the new Run#status output.
  Fix Run#status to return state as symbols rather than text.
Move XML related code to its own directory.

This is because there will soon be more than one XML implementation available.
Abstract out the content and attribute XML operations.

Getting the content of a text node and getting an attribute from a node were
missed in the last XML abstraction exercise. Now they are out of the main code
other XML libraries can more easily be supported without any changes to any code
outside the xml directory.
Separate out all libXML2 specific code.

This is now in a separate file so that other XML implementations can be used
instead. At this time however the only one available is the libxml-ruby one so
it is used exclusively.
Implement XML code using REXML.

This code passes the tests but is not used as yet.