BUG-1196, Bug 886: Refactored implementation of Choice Codec

Choice Codec and instantiation of Choice Case codecs
was updated to reuse common reactive instatiation
of mixin codec provided by LocationAwareDispatchCodec
which provides utilities to retrieve all instantiation
of cases in their right context, so codecs
use corect namespaces and see only cases which
are really available in particular subtree.

Serialization of Cases was updated to
use namespace from schema context if and only
if case is added by augmentation.

Added test which test serialization / deserialization.

Change-Id: Id2ff269b6d124a35bdca7f687114d3fa123091d5
Signed-off-by: Martin Vitez <mvitez@cisco.com>
Merge "BUG-1196, Bug 886: Refactored implementation of Choice Codec"