I have extracted you.  Pray that I don't extract you any further.
Separate body.
Body.
Private fields for Celestial.
Encapsulated Vessel.
Encapsulate Vessel.
Has predicates.
Mutable vs not.
Kept vessels.
After egg's review.
Lint.
Merge pull request #202 from pleroy/VesselCelestial

Extract and encapsulate Celestial and Vessel