Hmm, these out of bound axis errors seem to be split between `ValueError` and `IndexError`. Maybe we should define an `AxisError` at some point.