Now supports dynamic command registration