Universal Constructor: Theory, Priciples and Practice