The soul of ActiveCube: implementing a flexible, multimodal, three-dimensional spatial tangible interface