OK, I looked through your source, and the original code you posted looks to be working fine. However, I did find this area of interest within your main sketch:
In your activateMode() function, you call this:
Code:
for(int o = 0; o < 110; o++)
{
...
text(feelings[o], 145 + o * 40, (height/2) - 20);
println(o + " " + feelings[o] + " " + feelingCountDesc[o]);
...
I may have missed something, but from a glance it seems as if you initialize feelings to "= new String[1];", then you expand() it later to "expand(feelings, feelings.length + 1);". So by my count, the size of feelings is only [2], and yet in the above code, you are incrementing the variable "int o" all the way up to 109, which means you are way out of bounds when trying to call "feelings[o]."
Again, I looked at the code quickly, so maybe you add 108 items to feelings[] somewhere along the way. But if not, that's what's causing your OB exception.