Add systemd socket support | bnc#853300

Unit commands added so far:
```start```, ```stop```, ```enable```, ```disable```, ```status```, ```show```.
Implemented are the basic systemd properties.

To be used like this:
```ruby
Yast.import 'SystemdSocket'

# find a single socket by its name
socket = SystemdSocket.find 'iscsid'
socket.listening? # true or false
socket.start # true if success
socket.path # path to socket unit file
socket.disable

# get all supported sockets 
sockets = SystemdSocket.all
```
and more.

Part of this PR is a new object-oriented systemd API  that can be used for all systemd units (services, targets, jobs).