Added location information to Kramdown::Element.

* Uses StringScannerKramdown (which has current_line_number method) instead of StringScanner.
* Records :location option on all Kramdown::Elements where this makes sense and where it is easily implemented.
* Initializes nested StringScanners with their parent Element's :location as start_line_number.
* Adds tests for :location information.
* Adds tests for StringScannerKramdown.

See pull request for more details.
Some changes to the location feature

* StringScannerKramdown → Kramdown::Utils::StringScanner
* The class now takes the start line number as optional second
  argument.
Disable warnings on test runs because of Prawn