Model ports, make them selectable

Fixes [MLHR-1400](https://malhar.atlassian.net/browse/MLHR-1400).

I will comment on the code in this PR where I feel it is necessary.

![image](https://cloud.githubusercontent.com/assets/1390651/4227802/cc7efa30-394c-11e4-8655-9963d0145bc1.png)


Squashed commit of the following:

commit f8d20d69e4685e325bef407ab2745d046e691a51
Merge: 14ff4fe efc0ea0
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Sep 10 17:42:21 2014 -0700

    Merge branch 'ngConsole' into ng-dag-port-model.MLHR-1400

commit 14ff4fed40eb33999acf58b0232fe3b78c073f5c
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Sep 10 17:41:26 2014 -0700

    changed highlight colors for dag editor

commit 7d410ee506c52fb9e0db5a382c53943a9704561d
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Sep 10 17:37:12 2014 -0700

    added styling to selected ports

commit bc3c9fa6d69e208ccdb1d3511535eaa4930ffe58
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Sep 10 16:58:15 2014 -0700

    added port inspector, dagPort directive, PORT_ATTRIBUTES

commit 7ad218c6e0729af32f3339a95e2d3dafd277d5a6
Author: Andy Perlitch <andy@datatorrent.com>
Date:   Wed Sep 10 14:55:18 2014 -0700

    added copyPorts method, inputPorts and outputPorts to operator class
These are the attributes one can set on a port