I'd like to share with you my experience as developer of the software part of arduino

I have a strong experience as software architect (about 15 years of real problem solving as consultant).
I have done about six small arduino projects, trying different approach.
I'd like to suggest using the Aiko library
https://github.com/geekscape/Aiko for following reasons:
- It is very simple, yet powerful: you get an event-driven micro framework. I find it better then timed Actions, but less complex in respect of bigger framework.
- You can use the unit testing approach included in the sources for your own project. So you will be able to do unit testing in a very effective way.
- You get also a nice Json-like parser for serial input/output
Event-driven framework are better suited when then numer of sensors and tasks grows: so give Aiko a try!
My two cents!