add tk/ttk preference

Added a constructor option (preferTk=True/False) to set the preferred
framework
few adds and a correction

added possibility of giving a json string to constructor
added options validity check and try to pass widget with only the
permitted options (or not at all)
corrected a logic fault in framework selection
Merge pull request #3 from tbmale/master

Cool thanks a lot. Drinks on me when we meet...:-)