Add ValueObject<T> interface. Hope it will be usefull, not sure