DD was a non-sleeper for ages as well. Various things worked for us and then she would regress. And her sleeping through only really became a constant thing a few months ago (she is 2 in Feb). What worked for us earlier in the peace was;

Limiting day sleeps and actual time during the day for sleeping (she had to be up by 2pm).

Making sure she had her comfort things before bed.

Sticking to a night routine

As she got older, we waited for her to show tired signs rather than just putting her to bed - she was more inclined to sleep through that way.

Reminding her she had to sleep all night and stay in her bed and not call out.

What is working at the moment (she regressed when her 2 year old molars started coming through) was reminding her of the "rules" (she really likes rules - wonder if that will be the same in 10 or so years!). The rules I tell her are that she has to sleep "all night" and no calling out. Last night was the first night in about 6 weeks that she has woken up and needed me in the middle of the night. We also have a rewards chart to encourage her.

Hope that helps and hope he settles in to a decent routine soon.

MG