Added optional support for variable precision. Useful for compatibility with some MapQuest options.

This change adds compatibility with MapQuest Platform Services' similar coordinate encoding scheme (http://open.mapquestapi.com/common/encodedecode.html), which is identical to Google's except that shapeFormat=cmp6 may be specified with some queries (see eg http://open.mapquestapi.com/directions/) to request 6 degrees of precision instead of the default 5, as used by Google. Existing code that uses EncodedPolyline should not need to be changed; the precision arguments for all EncodedPolyline functions default to 5.