This now contains five banks. The way the arrays and matrices are set up is slightly different. Hopefully there are no bugs, but no guarantee. Needs more testing.