Refactor

- Split shipcontroller into smaller components