Fixed XML testing

Actually compare XML trees rather than relying on the text
representation being same as this is pretty much dependant on lxml
version.

Signed-off-by: Michal Čihař <michal@cihar.com>
Added virtualenv-setup documentation.

Signed-off-by: Florian Bergmann <fbergmann@suse.de>
- test.httptest: beautify (pep8 and one additional newline before osc specific imports)
- test.wc.test_package: test content-type (commitfilelist)

The content-type for commitfilelist should be "application/xml".
- wc.package: set content-type in _commit_filelist
- test.httptest: always use compare_xml if the content_type is application/xml
- added test.util.test_xml module

It contains testcases for the util.xml module.
- util.xml: added custom OscElement and OscStringElement classes

Their find/findall methods support an xpath expression.
These classes are used by default when parsing/constructing an xml.
- always use OscElement instead of objectify.ObjectifiedElement

(Renamed class "OscElement" in the remote module to "RemoteModelElement")
- pep8-ified code
- cli.request.ui, cli.review.ui: fixed --interactive option name
- test.wc.test_package: test reverting multiple files
- wc.package: added support to revert multiple files

Also changed the interface of the abstract base class WorkingCopy
to support reverting multiple files.
- test.wc.test_util: added testcases for wc_init
- wc.util: changed semantics of wc_init

Now, it can be used to init a wc with an external storedir, which
already represents an initialized wc (this is will be used by the
upcoming Project.revert method).
- wc.project: Project.package returns None if path is no wc
- test.wc.test_project: added testcases for Project.revert
- wc.project: added Project.revert method

This can be used to revert packages.
- oscargs: refactored OscArgs._parse_entries

Moved the entry parsing code to a new dedicated _parse_entry
method.
- test.test_oscargs: added testcases for alternative entries