Button: first pass at css only buttons

Just for review of approach not for merge