Improve validation of inter links

**Don't merge this before we fix #54.**

For `index.md` we want that if the title of `??-*.md` is `Foo Bar` than we use **only** `[Foo Bar](??-*.md)`. For `??-*.md` we don't want to force this rule.

> In my understanding of the spec, we have a strong preference towards 
> checking the text of links. It should not be disabled by default in 
> most validators. 
Agreed.
>
> Some pages do not have a YAML /subtitle/ header (|motivation.md|), or 
> else the link text would not ordinarily be expected to match the YAML 
> /subtitle/. Rather than add a lot of complicated special-casing and 
> super calls, can we fix how |motivation.md| should look?
>
Mmm... `motivation.md` is different from everything else because it's a 
deck.js slideshow, not a standard lesson web page.  We *could* change 
the header to:

~~~
---
layout: slides
title: Lesson Title
subtitle: Motivation
---
~~~

and then tweak the CSS to display it the way we want. @twitwi, what do 
you think?