Added a control file object so that we could serialize it, rather
than build up a string representing json.
Also reorganized the directory layout so that all user configurable
pieces are in one place.