Updated the random number generator to somewhat higher precision. However, for very large probabilities of spiking some time step dependence is still expected. The current setup again pushes the onus of accounting for the time step to the user. But a smart user will express rates as probability of spiking within 1 ms (as a float) and use the provided convert function to get the correct integer (int64_t) representation of these "rates". I suppose, technically p_spike(1ms)=1 is equivalent to rate= 1kHz.
In the wake of testing the new Poisson neurons I identified a hurtful bug in map_classol.cc: The "offset" of patterns was mistakingly reset to 0 after one time step (because the run function os only called on single time steps to allow for IO) with the effect that after the intended pattern, the 0th pattern was always presented to the network. Therefore, it could never self-organise into anything reasonable.

Remaining issue is to tidy up the rate definition more. Certainly needs a section in the user manual.
Merge branch 'development' of https://github.com/genn-team/genn into development
This will merge Esin's changes into Thomas work on this branch.