Minor: fixed space alignment
Split character code
Cleaner code splitting around objects

An object only as one header file (e.g. world.h) but can have several
source files (e.g. world.c, world_gen.c, etc). Features implemented in
additional source files are documented in the header files.
Added methods giving orders to character

This fixes #2 where attacking the closest building or character only
made the character go to it by making orders explicit.