Added Port

Ports are now creditable. Not yet implemented into HexagonMap. No real
functionality yet. Also optimized some of the other classes.