Lorayn, I disagree with almost every word of your post
"As my son is two, he asks me for help, he knows when he needs a wee yes, but he doesn't know when he needs food."
Yes, he does. Of course he does! A newborn baby knows when it needs food, and asks for it. Why on earth do you think a 2 year old doesn't know when he needs food?
"Perhaps encouraging your children to eat whenever they want promotes greed if they are eating both their snacks and their dinner, who knows."
Encouraging your children to eat WHEN THEY ARE HUNGRY does not promote greed, quite the opposite. Encouraging your children to ignore their hunger and to eat when you tell them it is time, and to eat the amount you tell them to, will teach them to ignore their bodies' empty and full messages. A child who is allowed to eat when hungry and stop when full has no need to be greedy.
"our bodies do not tell us what food we need to eat when we are hungry."
Yes, they do, until we lose the ability to hear the messages our bodies give us, and confuse them with junk food, diet foods, rules about when to eat and external controls from people who can't feel our stomach's emptiness or otherwise. Children left to regulate their own food intake - tiny children - eat a perfectly balanced diet over the course of a week or so, even if their intake seems to be random when looked at day by day or hour by hour. How can you have so little trust in your children's ability to nourish themselves? It's the primary ruddy drive of living beings - to get sustenance - do you not think nature has got it right by now?