Normalize encoders. Always.

Fixes #565.

Had to change `spa.test_thalamus.test_routing` as it failed with
this change. After looking at the plot, seemed that it was testing
values before settling; altered the points tested accordingly.
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.
Add Sigmoid neuron type

And enable it for all `nl` and `nl_nodirect` tests.