Added an 'elementary' function.

The new function creates an identity array that's had a single row operation performed on it. Quite useful when doing matrix multiplication. https://en.wikipedia.org/wiki/Elementary_matrix
It is fine if you are sure they are integers. You aren't though, so just call `np.array([i, j])` to be sure. (i or j might be scalar arrays for example). Actually this would be safe *after* gh-4434