It would be nice if commons lang had a Service class for threading – similar to the one provided by Guava, but without Guava's poorly designed API and excess baggage. This would essentially be a thread with an initialization method and a shutdown method (along with the actual run method). The thread creating the service would block until the initialization finishes successfully, and the service would call shutdown when it finishes (or if it gets interrupted). You would be able to query the state of the Service at any time.
It would live in the concurrent package.