Optional line numbers for liquid errors

Adds a line_number flag to Liquid::Template.parse(), which will add line numbers to errors.

Note that this does *not* add line numbers to warnings for the strict parser in warn mode. Couldn't figure out yet what the best way is to do that.

@trishume, thoughts?

Part of https://github.com/Shopify/liquid/issues/245
Perhaps make token default to nil `token = nil`. That way you don't have to do an ugly `handle_error(e,nil)` call when it isn't a syntax error. Also it is possible that some Liquid extension (jekyll, shopify?) calls this method with one argument.