Update doc, improve descriptions, add new features, fix spelling issues