Added new abstract classes to support research and ships. Will do the same for world objects soon.