added settings functionality -ish