AUI-1612 Adding wrapper for textfield and textarea

When working on this bug I noticed that https://github.com/liferay/alloy-ui/commit/841a65ce71cf048140cc2696a7570626495ddd73 has broken the width feature for textfield and textarea. The wrapper was actually still necessary for that, bootstrap requires it. So I changed aui-form-builder-field to find the actual input inside a templateNode, and make changes on that instead. It now works well for both inputs with wrappers and without them.
AUI-1612 Form builder textfield and textarea need width validators

We currently allow any value to go through the width attribute, but we should only allow the strings 'small', 'medium' or 'large'. This adds a validator for textfield and textarea to enforce that.
AUI-1549 Error in widget-modality.js

Currently, if a modal is showed on a page where the scrollbar is not at the top, it will scroll the page to the top and show up there instead of at the place where it was triggered.

This is because we're using WidgetModality together with WidgetPositionAlign. WidgetModality focuses the modal when it becomes visible, but it does so before WidgetPositionAlign positions it on the viewport, so the window gets scrolled to the top and only then the modal is positioned.

This is fixing the issue by just changing the order of the modal augmentations, putting WidgetModality at the bottom, so it only focuses the modal when it's ready and correctly positioned on the viewport.