Update a bunch of settings related functionality and commenting, and reorganized different properties definitions