Prepare the 'objectlib' package to be separated into a library module
Refactoring: split the 'objects' package into two, 'objects' and 'objectlib'.The point: we're going to need to move the 'objectlib' stuff into its own library module, and that's because we're going to create a new app module which needs access to it.
Separate the notion of maxLevel (in DB) [which has to stay backwards-compatible with previous versions of the app] and 'numScrambles' - the number of times an objects gets scrambled in the 'full scramble' mode. Now the second can be whatever we want without breaking backwards compatibility.
Correct the way we overlay our (possibly) better local (i.e. unsubmitted yet or submitted, but not picked up by the 'clean_db' cron job) records on top of the DB records ini the 'Scores' dialog.
- report the Graphics driver's Renderer and Version.- new Diamond, Skewb2 and Skewb3 meshes.
Always use only (max) 10 levels - (max) 9 'initial' Levels + Full Scramble.
Progress creating the Tutorial Dialog.
Rename some classes.
Solving time - display it more accurately.
Make the Scores Dialog screen-size invariant.
Fix for a crasher seen in the field.
Move to AndroidX, target API level 29.
Each object size now has its own number of levels (not always 18!)
Reorganize UI of the Play state.
More support for the 3x3x3 Solver: more of the actual 3x3x3 solver mechanism.