fixed a bug in Get where the object wasn't being populated from memory correctly
getStructKey needs to return an incomplete key for Put requests, so instead added a parameter to extractKeys in order to determine if incomplete keys were okay or not.  Doing a Get
request on an incomplete key is what results in the datastore error "datastore: internal error: server returned the wrong number of entities"
added more unit tests which is where these errors were caught
checking in failed test where Parent isn't populated during a GetAll() request
it's an error in setStructKey but I can't figure out how to do the proper reflection calls to fix it
Merge branch 'master' into self

Conflicts:
	entity.go
	goon.go
	goon_test.go