expanded the ability for changeSettings to use a subset of markers

Previously, the changeSettings function could only ever use ALL the
markers for determining how to fit-zoom or fit-center.  This was a bit
limiting because it's often helpful to be able to zoom or center on just
a subset of markers (e.g. newly added ones).

To make this possible, I needed to change changeSettings as well as
_autoZoom and _getMapCenter.  While I was doing this, I removed the
redundant _getBoundariesFromMarkers function and added a _convertMarkers
helper function.  The problem is that some functions expect an array of
google maps Marker objects and others expect objects of the form
{latitude:12.34, longitude:56.78}.  That's why there was both a
_getBoundariesFromMarkers and _getBoundaries function.  Each took a
different form.

I created _convertMarkers to convert the google maps Marker version over
to the simple object with latitude/longitude version.  I then went
through and made _autoZoom and _getMapCenter always expect that they
will either receive the array in that simple format or if they are
passed fromMarkers=true, it will convert the internal markers list to
that format.

Finally, I also put a bit of code into changeSettings so that it would
look and see if a markers array was passed in as part of the options.
If not, it would call _convertMarkers on the internal marker list and
use that.  If markers were passed in, it would double-check to make sure
the first one is in the simple object format and if not try to
_convertMarkers on them.  That last is a bit of kindness that could
actually be taken out if anyone objects.