port of darmok google account code

note: password handling MUST change
Community edit/create