Trying to encapsulate a bit more

This is in preparation to explore letting the Arduino handle everything