correcting many typos and grammar, thank you geoff