Major changes:

1) State engine redesigned
2) New button control manager. Handles two buttons instead of one. Do not use interrupts.