shell: Don't assume that all network slaves are ethernet devices.

Previously, we would delete all connection settings of a interface and
creating a new "ethernet" one when turning it into a slave.  Also,
freeing a slave was done by just deleting the slave connection
setting.

Now we are careful to modify the existing connection settings.

Fixes #1110