Draft: Added is_linked attribute to each pad and verified all pads linked before executing graphs.
Closes #2 (Sorry about the long branch name)
Adds an 'is_linked' attribute to all pads, which is set to False. Calling link() sets self.is_linked and other.is_linked to True.
Adds an attribute Pipeline.elements that stores every Element object. run() iterates through Pipeline.elements and verifies is_linked=True for all elements.