[settings] check control types - the id's have changed so old skins could crash
[guilib] adds non-const version of GetControl
[settings] use dynamic_cast<> to upcast to known control types and check NULL