Massive refactoring of package names.

The project was in need of some clean up, so I tried to organize the
packages a bit better. Anything relating to generics is now in a
generic-marked package, and processes and controllers have been split
into two packages.