Initial code commit

Still in development. Need to cross items off the list still