moved ship struct to its own header, because it doesn't make much sense anywhere that currently exists