ButtonCommit

Almost done, too tired to remember a small bit I have left to do. Will
finish tomorrow