Update docs and notes
start of major refactoring

Added all new options
Added clean command
Added --all support
Added more option checking
Changed ingydotnet to git-commands
more note files
update todo list
update notes
Added the reclone concept to the doc and code
Take a stab at implementing a simpler clone

Literally clone the subrepo into subdir (at branch) and add the .gitrepo
file. Does it need to be more complicated than this?
Make a better commit msg

* short msg is subrepo command
* long msg is all info in pretty json

meta field 'former' is now 'parent' (the HEAD before a clone or pull)
this value is not self referential, so can aid in fewer commits
notes and links
rename a variable
get rid of duplicate var
Add remote and upstream branch on fetch.

Will add a config option to stop this, but 'gsr clean' already cleans up.

Now the subrepo remote is always available.
Changing former to parent broke this:
notes
Use more plumbing in clone:

The prior clone command used too much porcelain stuff.
Fix missing line continuation
update todo
Update the tracking remote and branch

if update_wanted and -b and/or -r
Add runner functions

srun and orun, run external commands check for errors. They deal with
various output appropriately.

Print commands on verbose.
Added the fetch command