Refactored board and board_spec
Refactored ship to use method missing & attribute readers
refactor coordinates to reduce dependency