File edition

* Adds file edition support
* Git integration now checks if current branch is tracking a remote ( to avoid faulty pull/pushes )
* When a file is edited the file is commited. If the branch is tracking a remote the repo is pushed.