Make the "Round Trip" of user input in TextBox classes more robust.

Added a check to ensure that formatted values set into a TextBox by set('value', x);
are synonyms to the value specified, using the parse()/filter() methods.

This check skipped for cases where the for formatting of a value may have
been done asynchronously.

Fixes #17955
fix typos in test, refs #17366
CSS position properties in popup._repositionAll() are now treated as floats instead of ints, fixes #17990.