First commit in somewhat usable state