Goal: excluding and then installing results in incomprehenisble problem desc. (RhBug:995459)

Patch concept by Michael Schroeder <mls@suse.d>. Thank you!

There still are alternative approaches to excludes: dropping packages them from
the repos or by using pool->considered, yet so far nothing indicates we need to
go there.
New version: 0.4.2
build: 0.4.2-1
tests: move TestSack out of the testing module into tests.

Tailored load_yum_repo() is moved into the TestSack and TestSack is moved out of
hawkey.test: clients like DNF do not care for hawkey-tailored
load_yum_repo(). Better leave them access to the real load_yum_repo and let them
override.
methods get_delta_from_evr from package and add_cmdline_package from sack can take unicode string as argument
New version: 0.4.3
build: 0.4.3-1
iutil: running_kernel().
tests: dump_packagelist() can free the list too.
refactor: goal: reinit_solver()
refactor: concentrate all libsolv solver initialization into the static solve().

decisions about when to disable installonly etc. can easily take place there.
iutil.c: dump_solvables_queue.

Useful when debugging installonlies.
Limit the number of installed installonlies. (RhBug:880524)

apichange: hy_sack_set_installonly now takes a new parameter: the limit on the
number of present installonlies.

The implementation emulates exactly what yum does: look at all the *provides* of
the designated installonly strings, but limit the number of packages *per the
package name* basis.
goal: when sorting the installonly candidates, consider the running kernel.

Sack gets a hook to override testing the running kernel, useful in unit tests.
installonlines: python bindings for installonly_limit.

apichange: This coincidentally reverts the API change of a28f8f1. It is more
convenient to set the installonly provide names and the limit separately after
all.

Related: RhBug:880524
tests: shave some lines off test_goal.c by using smarter Goal results assertion.
tests: slim test_goal.c by using a testsys function instead of its reimplementation.
adapt to libsolv 3b3dd72: obsoleting by an installonly package is erasing.
speedup fetching rpmdb a bit by reusing what we can from the old cache.

Suggested by mls, thank you!
With the current libsolv there's no need to reinit solver for re-resolving.

pointed out by mls.