Ensure success callback for getCurrentPosition is called only once.

Also add a bunch of documentation to the header. Methods with simple names sometimes do unexpected things in this class.

BUG=311876

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

git-svn-id: svn://svn.chromium.org/blink/trunk@162922 bbb929c8-8fbe-4397-9dbb-9b2b20218538