Added IPAddressType, refactored types