[TASK] Fix imports in CheckboxViewHelperTest
[TASK] Remove a stray tab character in AbstractContainerTest
[TASK] Fix an import in ObjectViewHelper

Not a bug fix since the import only affected a variable type annotation.
[TASK] Refactor method to build path to field into own method

...and add to FormInterface.
[TASK] Add a missing class import

Again, not a bug fix since it only affects a variable type declaration.
[FEATURE] Identity and None components and ViewHelpers

Can be used to generate read-only fields; the Identity component
generates a `None` field that can only have one name: `id`.
[TASK] Make Flux's ContentProvider always execute commands

This is done with the detail in mind that even though a Provider may subclass ContentProvider and therefore risk calling methods twice, almost any method overridden on the Provider (getFieldName, etc.) would cause the processing to happen differently.
[BUGFIX] Restore check for "is field inside object" in Sheet getFields
[FEATURE] Automatically assigned ID for all Object components

This change post-processes the data saved into records and adds an automatic, unique ID to each object right before saving the data. The ID can then be used as `{object.id}` in templates and `$object['id']` in PHP.

Since the ID will be unique, it is ideal to use to name content areas if an Object contains any. Without this ID, only the array position or a manual ID could identify the Object, causing unexpected behavior when removing Objects containing content elements.

Fixes: #365 with some modifications: the actual issue will not be fixed until templates are migrated and such migration would potentially break content relations.
Merge pull request #417 from NamelessCoder/uniqueobjects

[FEATURE] Automatic ID for all Objects