fix(ngModelOptions): add textarea support

since directives are sorted by priority and name and `ngModel` & `textarea` have the same priority and 'textarea'>'ngModel' (unlike 'input'), textarea in linked first. this is a problem since textarea expect ngModelController.$options to exist and it is created only when ngModel is linked. this is solved easily by moving the creation of $options to pre-link.

fixes #7281