One thing that bugs me, why should houses be any different from anything else we buy? Really they shouldn't cost anything more than materials, labour and a acceptable profit, paying for it over many years should be done mainly direct to the builder with no interest on top as they're making a profit already and should just have to accept getting profits back slower.
The builder needs cashflow to maintain his business. He cannot afford to take payments over such a long period of time; the cost of building a house is enormous, so he requires large sums of money as soon as possible.
Most houses these days are built in stages, with the payment being released by the bank to the builder over a period of time, subject to the buyer's approval of the work.
Having been built, houses increase in value as a result of supply and demand. They are affected by population trends, migration and immigration trends, land use trends, land availability trends, and changes to the surrounding area.
When the population rises, housing becomes a valuable commodity and prices rise to match the rising demand.
If a suburb offers excellent amenities and a premier location, it will be valued more highly than a poorly serviced suburb 30km from the CBD.
If a suburb experiences significant development (eg. a sudden rise in high-density housing; a new set of council flats; the creation of an industrial estate; the construction of a heavily polluting factory) it will become less attractive to buyers, and its value will decrease correspondingly.
Etc. etc.