Create AttributeSet for use by Nodes and Ports #81

Not doing verification against list of possible attribute names and
types yet.
Rename to Attributes, use in more places

Updating Connection and Constraint to use Attributes abstraction.

updating unit tests as well.
Merge pull request #101 from TysonAndre/attributeset

Create AttributeSet for use by Nodes and Ports