introduce the 'dimensions' template, which should help clean up the dimensional constraints mess