Implementing `finalize()` can be a big performance overhead for things called a lot. We're fine with the ssh-tasks I think (because the overhead of ssh'ing is way bigger). But at the point when we're trying to optimise a long-running brooklyn node then `BasicTask.finalize()` may well prove a bad idea.

http://stackoverflow.com/questions/2860121/why-do-finalizers-have-a-severe-performance-penalty
Effective Java (second edition) item 7: avoid finalizers