Don't duplicate @media blocks.  Fixes #69, ported from rsternagel's pull #112.
Big Sass function breakout.

- FunctionRegistry is now FunctionLibrary, which sounds more like a
  thing and less like I had no idea what to call it.

- Built-in functions are all added to the library decorator-style.

- Built-in functions have been split into several smaller modules.

- The stuff in parseutil turns out not to be related to parsing, so it's
  been broken apart too.
Kill legacy_register.
Oops, fix numbering on those media query tests.
Remove the "FINAL" rule property; unused.
Somewhat simplify the "extends" handling.
Store selectors as a set, not a baked string.
Factor out self.construct, kinda.
Convert rules to objects, with back-compat for the moment.
Finish rule to object conversion.
Remove some debugging code that no longer works anyway.
Refactor several Scss attributes into regular vars.
Factor out the omnipresent p_selectors and p_parents arguments.
Retab changelog.
More argument cleanup.  UnparsedBlock is now its own class.
Some minor rearrangements.

- Experimenting with breaking the header out of the Block class.

- Split some expression evaluation methods out of the compiler class, as
  none of them actually depend on anything but the library or each
  other.

- Renamed some poorly-named variables.
Remove spawn_rule.
Remove backwards-compatibility from SassRule.
Add a simple smoketest, which actually covers imports.
Break file handling out of rules and into a tiny class.