Restructed Controllers. Addressed field in spider

References #127

Added the addressed field to the list of keys the spider needs to check
against.

Moved controller code into a controllers directory.
Merge branches 'controllerdir' and 'feature/type-clarification' into feature/type-clarification