A Software Architecture for Multi-Cellular System Simulations on Graphics Processing Units