Break up test_reset and test_dt_dependence

We were doing too much with these tests, which will cause weird
failures for certain neuron models.

`test_reset` was broken up into two tests, one that tests that
neuron models reset properly and one that tests that learning rules
reset properly. Similarly, `test_dt_depenence` was also broken up
into two tests, one that uses LIFs and all learning rules and one
that doesn't use learning but tests all neuron types.
Add default `rates` and `gain_bias` function

In the `NeuronType` class. These defaults should work for rate-based
neurons (`rates` is based on what `LIFRate.rates` was doing already).

The `gain_bias` function is adapted from some of @tcstewar's code.
Add RectifiedLinear neuron type

In doing so, noticed some errors in the rectified linear example
notebook. Fixed those errors in this commit.