perf(cubicspline): modernise Cython code
perf(cubicspline): modernise Cython code


* changes made for major performance improvements
* use Cython memory views.
* add typing to indices in for loops, and major arrays in `value_<>` functions
* remove bounds checking and negative indexing.

Closes #40

Co-authored-by: james-s-willis <25d595cfc49d4ff6003f78940f97f79f3b603939@hotmail.co.uk>
Co-authored-by: anjakefala <d7ec7f75e5d4ff4c6f9373723369aa6d1b7542bb@gmail.com>
radiocosmology/cora,radiocosmology/cora