Visible Sorting

Updated the way characters interpret seeable objects. Added the
FactionManager class, which stores relationships between factions (still
rough implementation) and returns a Response object to the character,
defining how it should react.