test-unit-name: add more tests

Add more test cases for:
- unit_name_is_instance
- unit_name_to_instance

Add tests for:
- unit_name_template
- unit_name_is_template
systemctl: handle correctly template units for edit verb

Previously, if we provided getty@.service to systemctl edit it would
have failed when using the bus because it is an invalid unit name.
But it would have succeeded when searching in the filesystem.

Now, we check if we have a template, if we do we search in the
filesystem, if we don't have a templae and we can use the bus, we do.

Furthermore, if we provided getty@tty1.service it would not have worked
when searching the filesystem, but it would have worked with the bus.
So now, when using the filesystem we use the template name and not the
unit name, and the same when logging errors.

(Also did a refactoring to avoid a long function)
build-sys: always distribute systemd-consoled.service.in

Similar to how we handle other facilities that can be flagged out at
configure time, we should always distribute this input file.

http://lists.freedesktop.org/archives/systemd-devel/2014-December/026272.html
build-sys: fix distcheck

- fix misspelling in filename (intenal -> internal)
- remove deleted hwdb-related file (nuked with sd-hwdb refactor)
build-sys: remove commented-out m4 from user@.service

Otherwise this actually remains in the generated unit in /usr/lib.

If you want to keep it commented out, a m4-compatible way would be:

    m4_ifdef(`HAVE_SMACK',
    dnl Capabilities=cap_mac_admin=i
    dnl SecureBits=keep-caps
    )
delta: fix output alignment of [REDIRECTED] entries
blkid: Warn when rejecting a superblock with a bad csum

Bump libblkid requirement from 2.20 to 2.24.
util-linux 2.25 is actually required since fdbbad981cc5da8bb4ed7e9b6646e7a114745ec5
shared: time-dst: Avoid buffer overflow

Commit 681f9718 introduced an additional null terminator for the zone names.
Increase the allocation of "transitions" to actually make room for this.
hwdb: Logitech MX 518
hwdb: Logitech G400s

Provided by Peter Hutterer:

  https://bugs.freedesktop.org/show_bug.cgi?id=87332
hwdb: fix ordering

We sort by default DPI, not the first one in the list.
networkd: failing to track links is a serious problem so log at warning level rather than debug
unit: handle nicely of certain unit types are not supported on specific systems

Containers do not really support .device, .automount or .swap units;
Systems compiled without support for swap do not support .swap units;
Systems without kdbus do not support .busname units.

With this change attempts to start a unsupported unit types will result
in an immediate "unsupported" job result, which is a lot more
descriptive then before. Also, attempts to start device units in
containers will now immediately fail instead of causing jobs to be
enqueued that never go away.
update TODO
networkctl: port from libudev to sd-hwdb
udevadm: port to sd-hwdb
udev: builtin-hwdb - port to sd-hwdb
shared: add minimal JSON tokenizer
hwdb: more an entry for the MS Sculpt Ergonomic

Note that the MS receivers likely work like the Logitech ones, i.e. all
devices connected show up with the same vid/pid/name. Full evidence remains to
be gathered.
hwdb: Logitech MX1000, another Lenovo USB mouse

Provided by Benjamin Bellec

https://bugs.freedesktop.org/show_bug.cgi?id=87343