Add draft of Component, on the way to write Ship