add nickname value type

Currently an implementation that is very strict to RFC 2812, may be
loosened up later, this value object will be used to handle nicknames
within the protocol context