BPackageManager: Abstract installed repository initialization

* Rename TransactionHandler -> InstallationInterface and
  DaemonClientTransactionHandler -> ClientInstallationInterface.
* Add InstallationInterface::InitInstalledRepository(). Use in
  _AddInstalledRepository() to get the repository packages instead of
  using the package roster. The ClientInstallationInterface
  implementation does it that way.
<package/Request.h>: Don't leak JobQueue into public namespace
Don't use BPackageKit::BPrivate; avoids clashes
Explicitly denote BPrivate to avoid clashes
package daemon: Delay handling node monitor events to group them
More explicit denoting the BPrivate namespace
Add BSolverPackageSpecifierList::AppendSpecifiers()
BDaemonClient: add comment
BActivationTransaction: Make BArchivable
BPackageManager: Make _InstallationRepository() protected
BPackageManager: Add alternate Install()/Uninstall()/Update()
BPackageManager: Add VerifyInstallation()
BPackageManager: Add ResultComputed() callback
BPackageManager: Add InstalledRepository::EnablePackage()
BPackageManager: Support pre-added packages

... as needed for the package daemon. _PreparePackageChanges() doesn't
try to clone them in this case.
BPackageManager::_CommitPackageChanges(): Fix error handling

The error returned by CommitTransaction() is just indicates whether
transactionResult has been initialized.
package daemon: Let Root know whether it is the system root
package daemon: Implement dependency resolution support

... for package changes performed manually by the user (i.e.
adding/removing files in a packages directory). Currently only done for
the system root. Alternative roots should still work as before, so this
shouldn't affect haikuporter (not tested yet).

Needs some more work (e.g. the GUI part).
vfs:Remove extra put_vnode call on error B_LINK_LIMIT exit

Fixing the autoconf test: attempt to create file in place of already
existing symlink. On error exit put_vnode was called explicitly before
returning error. The second, implicit call to put_vnode was issued on
destroying the VNodePutter instance that references the same vnode. At
this time the vnode has references count equal to 0 so corresponding
panic was executed. Great thanks to Ingo for pointing it out!

Fixes #9140.
ScreenSaver: Convert ScreenSaverItem.h to utf-8 encoding

For some reason this file was encoded as a MacRoman or some sort
of high ASCII non utf-8 encoding that made my editor sad.

Also, update the copyright and style while I'm at it.