cloneObject = (object)->
	clone = genObj()
	clone[key] = object[key] for key of object
	return clone

extendState = (base, stateToInherit)->
	stateMapping = Object.keys(stateToInherit)
	base[key] = stateToInherit[key] for key in stateMapping
	return
