dhcp-lease: refactor lease parsing

Use helper functions, and add some more sanity checking/asserts.
dhcp-lease: add support for parsing a few more dhcp options
logind: don't apply RemoveIPC= to system users

We shouldn't destroy IPC objects of system users on logout.

http://lists.freedesktop.org/archives/systemd-devel/2014-April/018373.html

This introduces SYSTEM_UID_MAX defined to the maximum UID of system
users. This value is determined compile-time, either as configure switch
or from /etc/login.defs. (We don't read that file at runtime, since this
is really a choice for a system builder, not the end user.)

While we are at it we then also update journald to use SYSTEM_UID_MAX
when we decide whether to split out log data for a specific client.
timesyncd: fix english language typo
timesyncd: use STR_IN_SET()
util: fix a gcc compiler warning
hwdb: update
update gitignore
networkd: link - serialize link when addresses change

Thanks to Kay for tracking this down.
sd-dhcp: make sure we can not fill options so much that there is no space for END
sd-dhcp: option_append - support falling back to 'sname' and 'file'
sd-dhcp: rely on FIONREAD working

This fallback will anyway never get tested, so rip it out.
sd-dhcp-client: factor out dhcp packet allocation
Revert "update gitignore"

This reverts commit 351efdc7a4d900a1aebca517dd0b46b89cdd7306.
core: add startup resource control option

Similar to CPUShares= and BlockIOWeight= respectively. However only
assign the specified weight during startup. Each control group
attribute is re-assigned as weight by CPUShares=weight and
BlockIOWeight=weight after startup.  If not CPUShares= or
BlockIOWeight= be specified, then the attribute is re-assigned to each
default attribute value. (default cpu.shares=1024, blkio.weight=1000)
If only CPUShares=weight or BlockIOWeight=weight be specified, then
that implies StartupCPUShares=weight and StartupBlockIOWeight=weight.
cgroup: rework startup logic

Introduce a (unsigned long) -1 as "unset" state for cpu shares/block io
weights, and keep the startup unit set around all the time.
cgroups: always propagate controller membership to siblings, for all controllers

This is the behaviour the kernel cgroup rework exposes for all
controllers, hence let's do this already now for all cases.
timesyncd: order after tmpfiles to get a working network monitor
build: put missing KMOD_CFLAGS into Makefile

The build fails if kmod is not in a default location.
Makefile.am: fix whitespace