added functionality to allow input and output connections to be formed between nodes