Attribute support

So after adding another test, I realised I should probably be starting etcd / discoverd for each test, so I moved that setup into the test.

I also added a `Service::Update` class (to replace using a `Hash` for updates)

WDYT?