basic functionality implmented for add, commit, checkout, push, status, and log