First commit

Seems to work ok, might need more comments