Software Architecture for Location-Based Games Designed for Social Interaction in Public Space