* added a tree with the groups filtered out for rendering the display templates
* don't walk the tree unnecessarily
* fix for groups after nested relations as often seen in M2M
* moved the tree function to utils and updated references
* [WIP] writing tests for the flatten-field-groups utility
* tests for the flatten-field-groups utility
* added soft_length to lang
* added softLength option to input interface
* softLength => textarea, md, wysiwyg
* really broken but counting characters
* return 0 not null oops
* characters remaining displaying
* percentageRemaining => shared
* placeholders => string
* markdown inputs need to change preview css
* account for multiple md inputs
* works for multiple inputs on a page
* let it breathe
* text area but no warning color (yet)
* newline is 1 char
* null => undefined
* shows with 0 hard limit left
* softlength tied to maxlength
* preview displaying md
* using share util
* Replace shared "interface" with util
* Add test setup
* Lock package versions
Co-authored-by: rijkvanzanten <rijkvanzanten@me.com>