Universal Turing Machine algorithm
With regards too your first question I would take a different easier to understand route.
Firstly you should note that most programming languages are (theoretically) Turing-Complete (which implied that for a program written in some programming language like C or Python you could transform it into a TM or vice versa).
I'm sure that you heard of the concept &quot;interpreter&quot;. It's a program that takes a script as input and runs it (e.g. the python interpreter). You can probably write a simple interpreter yourself (great tutorial).
Now notice that your interpreter could be converted to a TM which takes programs as inputs and runs them, thus you could construct a UTM, and the input would be e.g. a python script.
With regards to your second question: as I mentioned most programming languages used today are (theoretically) Turing-Complete meaning that you could transform any Turing-Machine too a program in this language. The straight forward approach, which works in most object oriented languages is just to model a Turing-Machine (using e.g. a string as tape and an int to remember where on the tape your head is and so on...simple example).
Algorithms that convert one program from one language to another are called transpilers.
I think I don't fully understand your last question. Of course you could plug a UTM into itself. It's like writing a python interpreter in python. The &quot;problem&quot; is that simulation comes at a cost. Generally if you simulate a UTM on a UTM the complexity of some operations increases.