Basic boilerplate and framework. Creating objects for each concept that
will need to be tracked during compiling.