Исправлегние нарушений абстракции кнопок и инпутов

В кнопках и инпутах нарушалась асбтракция, их поведение не соответствовало ожидаемому.

В качестве бонуса убрал необходимость в простом случае класть control в input.