Initial code commit

Code in rough state, preliminary functionality only