Reduced complexity by hardcoding parts of speech

* Programmatically determining verb forms is much less efficient than
  simply having the values hardcoded.
* part_of_speech.c has been changed accordingly
* array_util.c now includes a set of functions to shuffle an array