optional processing of connected inputs only

I went looking for this and found a discussion already on the [mailing list](https://groups.google.com/a/plasmodic.org/forum/#!topic/ecto-dev/ozL9hvIpSYY).

This pull request implements it...though not sure if it's the best approach. It exposes to the `process` function only those input tendrils which are connected - this was exactly my intuition when I first started using ecto.

Nonetheless, the default behaviour is as it was...the new behaviour is triggered when instantiating a cell, e.g.:

```
foo = dslam_tutorial.Foo("foo")
bar = dslam_tutorial.Bar("bar", connected_inputs_only=True)
```

and can be easily introspected from inside the `process` function by inspecting the tendrils map object, e.g.:

```
  int process(const ecto::tendrils& in, const ecto::tendrils& /*out*/)
  {
    std::cout << "Bar::process"<< std::endl;
    for(const auto& tendril : in) {
      std::cout << "  Name: " << tendril.first << std::endl;
    }
    ....
```