Buttons to start different loops

I would prefer 'model 3' since it avoids leaving you stuck in loop() (which would prevent main() from doing anything else) and keeps you closest to the behaviour of a plain old sketch. Naturally you need to design your loopA(), loopB() etc to be non-blocking too.