Generalized Pair

Provided dereference and member access overload operators for Pair,
allowing the underlying Element implementation to be abstracted away.