Major progress with version 2.0.0.
Support Jing3 and Jing4 ( aka 4x4 Pyramind and 5x5 Pyramid).
Progress with 6x6 Pyramid.
More fixes for UI in case of extreme screen (w/h) ratios ( from 1.0 to 2.0 ).
Very important bugfix for an issue which probably has been the reason for many mysterious behaviours in the past: the JsonReader class cannot be a singleton! Convert it into a normal 'instanced' class.With it being a singleton there's a major issue: when we create a new TwistyObject from a JSON file (by, for example, going to PurchaseActivity) and then we come back to the old object (by, for example, going back to the main RubikActivity) - then the JsonReader inside the old object has read the new JSON file and thus many of the 'abstract' methods in the old TwistyObject (for example getShortName()) all of the sudden start returning new values!
IAP part 5: new 'Purchase' activity (cont'd)
difficulty icons.
config: license.
Do not crash when something's wrong with the JSON file - handle this gracefully, do not change the object then, and report this to Firebase.
Fix for a crasher
Refactor RubikObject in preparation for creating RubikObjects from DownloadedObjects.
Re-organize tutorial list so that we can pull this one from JSON files.
Fix setDefaultRotation() when changing an object; do it at exactly the right time when the 'old' object has already disappeared, but the new hasn't been attached to the Nodee yet.
Include the info about 'numFaces' of a puzzle in the jsons.Based on this, and the recently introduced 'DEFAULT_ROTs' to the basic Shape classes, rotate each object in the Config so it looks attractive.
Add info about FPS.
Introduce 'Simple' and 'Nice' meshes.
Progress with Config UI.
Progress with Object Config UI.
Progress replacing the enum ObjetType with the class RubikObjectList.
Progress with ConfigPane.
Progress with ConfigScreen.