CONVO: Changes how SpecificBlock 'holds' on to its Tag.

This is a Conversational PR - the code almost compiles but not yet.

GOAL: Be lazy about getting the IWebElement to avoid Stale Reference Exceptions.

This was something that I've run into many times when dealing with Ajax heavy applications. To solve it we made our `Element`s only hold on to the `By` and then fetch it from the page each time. This was a perf hit, but in exchange our tess were significantly less brittle.