Separated Data in / out as well as architecture changes

Created input / output directories.  Also, i'm going to start writing these as
library files.  More architecture changes to come.