### Description
Currently we only use VectorComponentButton for one button because it is hardcoded to only work for certain button cases. Meanwhile we use Button.mustache for 6 cases. This task is for updating the PHP component and Button template to both be generic to be used for all buttons across Vector. This will also prepare us for using the new Codex CSS only buttons.
### TODO
Update props according to [[ https://doc.wikimedia.org/codex/main/components/demos/button.html | Codex ]]
[] Add `action` prop to account for progressive, destructive and default colors
[] Add `weight` prop to account for quiet, primary and default, replace 'is-quiet'
[] Add `icon-only` prop
[] Use Icon.mustache instead of `html-vector-button-icon`
[] Update data to use a consistent post fix `-button`. i.e. `data-collapse-icon` is renamed to `data-collapse-button`
### QA
[] No visual changes, (especially note the progressively enhanced buttons like echo buttons and watchstar)
[] All buttons should have the 'mw-ui-button' class but not the 'mw-ui-icon' class