Add a string_scanner package.

This code has been pulled out of the Shelf package.

R=kevmoo@google.com

Review URL: https://codereview.chromium.org//213833013

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@34665 260f80e4-7a28-3924-810f-c04153c831b5
Convert shelf to use the string_scanner package.

This also adds support for [StringScanner.error], which produces a
nicely-formatted scanning error.

R=kevmoo@google.com

Review URL: https://codereview.chromium.org//222843003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@34669 260f80e4-7a28-3924-810f-c04153c831b5
Fix the StringScanner tests under dart2js.

R=kevmoo@google.com

Review URL: https://codereview.chromium.org//222613006

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@34677 260f80e4-7a28-3924-810f-c04153c831b5
Add LineScanner and SpanScanner classes to string_scanner.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org//299973002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@36815 260f80e4-7a28-3924-810f-c04153c831b5
Make StringScannerException extend SpanFormatException.

R=rnystrom@google.com
BUG=

Review URL: https://codereview.chromium.org//343043002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@37619 260f80e4-7a28-3924-810f-c04153c831b5
Move a number of packages and some of pub over to using source_span.

R=efortuna@google.com, rnystrom@google.com, sigmund@google.com
BUG=19930

Review URL: https://codereview.chromium.org//401753002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@38526 260f80e4-7a28-3924-810f-c04153c831b5
Add SpanScanner.location.

Also explicitly expose FileSpans and FileLocations.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org//683323002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@41383 260f80e4-7a28-3924-810f-c04153c831b5
Add StringScanner.substring.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org//701723002

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@41536 260f80e4-7a28-3924-810f-c04153c831b5
Add an additional optional argument to SpanScanner.spanFrom.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org//795343003

git-svn-id: https://dart.googlecode.com/svn/branches/bleeding_edge/dart/pkg/string_scanner@42305 260f80e4-7a28-3924-810f-c04153c831b5
Add gitignore, status, and codereview files.
Update the pubspec's homepage link.