Yes we will need a top level tempate<>-bindable name to reference the parts. Why don't we use `template<int max_dim> struct dirichlet_discrete` instead of the non-bindable `namespace dirichlet_discrete` with templates inside?