gma/nesta — pull request #107 by MicahChalmer (2012-04-16 07:12:05+00:00)
Title: Add "link text" metadata and Page#link_text method.

This implements the "link text" metadata as discussed in detail in the comments of pull request #104. In so doing, also addresses #89 by adding "HeadingNotSet" and "LinkTextNotSet" exceptions.

One thing that might look odd at first glance: I changed the behavior of menus so that, for the home page only, if no heading or link text exists then it will use "Home" as the link rather than raising an exception. The reason I was concerned about this is:

1. The default home page template (that gets created via "nesta new") has no heading or link text
2. The first sample menu you see in [the documentation](http://nestacms.com/docs/creating-content/menus) includes the home page at the top. So does the menu-editing page in the content demo.
3. Before this change, having the home page in your menu when no heading is specified results in a menu with an empty link, which does not produce anything visible in the browser. Not what's intended, I'm sure, but it doesn't look bad unless you actually look at the HTML code.

I didn't want simple sites that followed the sample documentation before to suddenly throw exceptions--even coherent ones. The same override was already there for the breadcrumb bar, so I think it makes sense to apply it to the menu as well.