added setting class and property file to persist user's selected setting
updated with changes from the master branch