Mobile column heading interaction - needs cleaning up and abstracting. Part of #5