Vladimir,
As noted by Christian, "comenzar" and "empezar" mean exactly the same thing.
As for the difference of "haber" and "tener", the following can be said:
Originally "haber" and "tener" meant the same thing, indicating possession. Though today "tener" is mainly used to express the idea of possession and "haber" has been left aside to express two other uses of the language. Bank statements will still have a column that says "haber" and in this column you will find the numbers indicating how much money you have, so in legal documents or in technical vocabulary, you can still find the word "heber" indicating "possession". But as I said, its most common uses today are different.
Haber has now the function of an auxiliary verb to construct perfect tenses.
Yo he terminado = I have finished.
Ellos habían venido antes = they had come before.
The second use of this verb is that of "there is" in English, indicating existence or presence.
Hay un gato en la cocina = there is a cat in the kitchen.
Había 15 estudiantes = there were 15 students.
One thing you have to pay attention to is that the verb "haber" has a limited conjugation when it expresses existence or presence. It can only have a singular conjugation, even if the noun is more than one.
Hay una casa = there is a house.
Hay 3 casas = there are three houses.
Había un perro = there was a dog.
Había 3 perros = there were three dogs.
Many native speakers make the mistake of saying "habían 3 perros" because the conjugation "habían", but it can only be used when constructing perfect tenses, NEVER when indicating presence or existence. For example:
Ellos ya habían terminado de almorzar = they had already finished lunch.
But NOT:
Habían tres perros = there were three dogs.
As for "tener" it can only mean "to have" indicating possession.
Tengo dos cuadernos = I have two notebooks.
The verb "haber" cannot be used in this way anymore.
I hope this answers your question.