Added probes for learning rules.

- Signals in learning rules can now be probed.
- This required adding a learning_rule attribute to Connection similar
  to the neurons attribute on Ensemble.
- LearningRule was renamed to LearningRuleType to make space for the
  new LearningRule class (that Connection.learning_rule returns).
Use proper dictionary iterators.

- Making sure that we always use `iteritems`, `itervalues`, or just
  iterate over the keys, as appropriate.