Restructured to be more like OOP patterns. Hopefully will make things easier in development from here to next commit will be attempting to attach everything up again.