Working on total overhaul and refactor