Implement alpha-blended selection bar

This commit implements an alpha-blended selection bar using a dithered-gradient algorithm that uses error propagation to achieve a good gradient in low-precision colour spaces.