Refactored buttons

Added button models to the background so commands can re-use the logic