Added necessary properties for strings before references are made.
Abstracted some logic into separate methods. Made interfaces for data.
Added todo list for pending work.