Repository are now typed (only REPO_BINARY_PKGS exists for now
Isolate update per repo type
Use function pointers instead of a switch/case
Stop decoding all fields but DESC as they are not encoded anyway
Update libucl to latest version
Hide average speed from the progress meter

Showing two speeds is very confusing. While the average speed can be
interesting at the end of the download, when downloading it's the
current speed which helps identify peaks and stalls. This patch shows
the current speed only, and replaces it with the average when
finished.
As a side point, this leaves more room for package file name.
Custom ucl emitters

ucl_object_emit_sbuf: emit directly into a struct sbuf
ucl_object_emit_file: emit directly to a FILE *
Update copyright date
More copyright update
Fix logical errors in CUDF parser.
- Improve error message handling for locked packages
Merge branch 'master' into fix-autoremove-completion
Fix misusage of sbuf
Merge branch 'lock-error-msg' of github.com:so14k/pkgng into so14k-lock-error-msg
pkg-query.8: fix typo
Merge pull request #707 from ebfe/pkg-query-8-typo

pkg-query.8: fix typo
Add an error message if no repo config is available for the update.
Otherwise pkg dies silently.
Fix typo.
Leave update faster.
Introduce priorities for the solver.

Now all universe and request items has priorities. Priority is based
on the following principles.

- request priority is <repo_priority> (zero currently for all repo).
- dependency priority is <parent_priority> + 1
- reverse dependency priority is <parent_priority> - 1

Priorities are adjusted during universe processing, therefore
install/deinstall processes knows about the order of processing for
the solved job.