run slides in lexicographic order

It's a nusiance to have to shift many slides just to insert one.
Look for slides in lexicographic order, rather than strictly numeric
order, in order to facilitate grouping of slides

Note that this change is NOT BACKWARDS COMPATIBLE.  It may result in
existing slideshows being run in a different order.
prevent moving past first or last slide

Echo nice messages when user tries to move past start or end of
slide deck, instead of wrapping around or nasty errors.
only extract and execute if matching lines found

Avoid incurring cost of ``runghc`` on slides without Haskell code.
To accomplish this, change ``extract_into`` to avoid writing any
file and return false when no matching lines are found, and update
calling code to skip execution when ``extract_into`` returns false.
Merge pull request #3 from frasertweedale/feature/moar-win

Feature/moar win