Added firing rate estimators

- use either kernels or ISIs to estimate firing rates from spikes
- put these functions in a new file `utils/neurons`
- added some rough tests for these functions
Added adapting LIF neurons

- made one `SimNeurons` object in the builder, rather than
  having `SimLIF`, `SimLIFRate`, etc.