Scaffolding for more intelligent ship providers

This introduces the base scaffolding for more intelligent/powerful
ship providers. This would for example allow for the list of ships to be
dynamically determined from some external service (via AWS or GCE APIs,
for example).

Signed-off-by: Maxime Petazzoni <max@signalfuse.com>