Refactoring, Illegal connection prevention

- refactoring
dot->Dot
connection->Connection
- added canTakeInput value to DOT_LIST elements
- if, while making a connection, the destination node has
canTakeInput==false, no connection is made
- The user probably needs to be alerted of why the connection failed
(currently just in JS console)