04-howto.md: Assorted typo fixes and cleanups
04-howto.md: Use reference-style links to avoid URLs in the text

Besides making the text easier to read, reference-style links [1]
also:

* Isolate the text from changes to the URLs (e.g. no need to reflow if
  the lesson-manager repository moves to a new URL).
* Allows you to reuse a single URL if you wanted to link to Bower (or
  whatever) every time you mention it (instead of just the first
  time).
* Provides a convenient list of URLs at the end of the Markdown file
  which you can use to check for dead links later.

[1]: http://daringfireball.net/projects/markdown/syntax#link
test-lessons.sh: Stick with tabs for indenting the Bash code

Folks can set the tab-width in their editor to whatever indentation
depth they prefer ;).
test-lessons.sh: Use POSIX's 'command -v' instead of 'which'

'command' is in POSIX 2013 [1], but 'which' is not [2].  Sticking to
POSIX keeps us portable.

[1]: http://pubs.opengroup.org/onlinepubs/9699919799/utilities/command.html
[2]: http://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html
test-lessons.sh: Add '&&' before info() calls

We want the whole script to be one giant and-ed chain, so the script
will stop executing as soon as any command unexpectedly errors out.
test-lessons.sh: Fix '.:' -> '.' typo in student-workshop info string
test-lessons.sh: Condensed info messages

Try to keep the source under 80 columns, and avoid being too
distracting in the output ;).
test-lessons.sh: Less highlighting in info()

We want folks to focus on the info text, not the highlighting ;).
test-lessons.sh: Quote echo arguments

It's nice to explicitly say "this is a string we want to print"
instead of having the shell parse the string into arguments and then
have echo reassemble them into a string.  Plus many editors will give
you nice "this is not code" syntax highlighting for strings ;).
test-lessons.sh: Add .bowerrc files to repos with dependencies

Override the stock 'bower_components' [1].  After this, the
student-workshop tree output looks like:

  ├── README.md
  ├── bower.json
  ├── git-lesson
  │   ├── README.md
  │   └── bower.json
  └── shell-lesson
      ├── README.md
      └── bower.json

[1]: http://bower.io/docs/config/#directory
test-lessons.sh: Drop '-lesson' from dependency names

Collections will obviously be (by context) collections of lessons, so
'shell-lesson' is wordy.  With this commit, the script wraps up with
something like:

  ├── README.md
  ├── bower.json
  ├── git
  │   ├── README.md
  │   └── bower.json
  └── shell
      ├── README.md
      └── bower.json

  2 directories, 6 files
  bower check-new     Checking for new versions of the project dependencies..
  swc-workshop /tmp/student-workshop
  ├─┬ git#0.1.0
  │ └── shell#0.3.0 (0.2.0 available)
  └── shell#0.3.0
Merge pull request #5 from wking/howto-typos

04-howto.md: Typo-fixes, reference-style links, and other cleanups
Merge pull request #6 from wking/test-lessons

test-lessons.sh: Assorted cleanups and a new .bowerrc
Removing @@forceTags as it could be misleading and shouldn't be used in real life
close #7
diving into the script solution: adding . as a bower directory by default
starting script in python
"edit" command to remove the bower dep and clone the repo in its place (no explicit fork yet) (no reverse operation yet)
updated howto