Added t3067, t3068 - re-parse directories when a group is removed.

If we remove the directory containing a group, then that group is deleted. For a normal file, this would result in any dependent directories being reparsed (eg: if they use ../foo/generated.o as an input) because we would have a directory-level dependency there. However, for groups we are no longer adding directory-level dependencies, so the other directory that is using the group was not being reparsed. This would then cause other errors, since the commands would lose all association with that group. The fix is to make sure we reparse directories whose nodes are inputs or outputs of the deleted group.
Documented the <group> feature.
Added note about blank commands.
Adding %g syntax

Adding a new flag that expands to the glob expansion match.
The main use case for this is if the command to run changes the basename
of the file:

: foreach *_master.c |> foo %f |> %g_minor.out

I implemented it by adding on to the basenamelen, basenametotlen, etc.
infrastructure with an array that gets updated to the index and length
of each portion of the expanded filename. tup_printf() then uses this
array to substitute in for the %g flag.
Merge branch 'master' of https://github.com/gittup/tup