Remembering button state

You know those delays keep your project from seeing what is going on with the switch(es)?

You can keep track of time passed with millis(). Store millis() in unsigned long and when you add or subtract times it won't matter if the variables 'roll over'.