Add base classes for Action and DataSource

These base-classes accept the loop in the constructor so every
implementation can use them.
Implement first version of the Ping data-source

Unfortunatly this is not async as there is no way to use
stream_socket_client for an ICMP socket. :-(