size & storage set up when constructed, avoid splitting auto-size & explicit one
more expensive in code size than just a global, but can be remedied elsewhere
same as gpio init, settings & eeprom initialized statically within a func context
revise internals to access specific instance