Address Namespace

Sway utilizes namespaces to distinguish between address types.

Having multiple address types enforces type-safety and expands the range of values that an address can take because the same value can be used across multiple types.

The main types are:

For ease of use there is an enum wrapper Identity which contains both types.