Uemis downloader: handle more corner cases

After receiving another report of the Uemis downloader failing I tried to
make it more robust when unexpected things happen. The data structures
returned by the SDA are rather convoluted and not all relationships are
fully understood.

This makes sure we don't try to parse invalid dive entries, we only read
dive entries if we actually got new divelog entries, we only read dive
sites if at least one was referenced and we use a much more patient (and
hopefully, much more robust) algorithm to figure out which dive entry
corresponds to the new divelog entries.

What a pain.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Fix standard cylinder names

We need to pass the size as an integer.

Signed-off-by: Dirk Hohndel <dirk@hohndel.org>