Improve Startable support with dependency sort and make StartablePlugin an independent plugin.