fleet agent does not compare contents of units in reconciler

1. `fleetctl start` a unit
2. wait for agent to pick it up
3. `fleetctl destroy` unit
4. quickly `fleetctl start` unit with different contents

Assuming the unit gets scheduled back to the same host, easily reproducible using global units, the fleet agent will not deploy the new contents and restart the service.
Rather than stealing the variable `units`, can we just call this `states`?