Тобі literally means 'to you':
- тобі = to you
- пʼять = five
- років = years
This is a sentence with the verb 'to be' omited, so literally it means something like '[is there] 5 years to you?'
Тобі can sometimes be used in a more generic sense to show that the situation is somehow related to 'you'. So, «так» literally means 'so, in such way' (it can also mean 'yes' but not in this expression), and «тобі» means that the situation is somehow related to the listener.
Actually, I don’t use «так тобі» in this meaning, I use a slightly different version: «так собі» (literally 'so[-so], to itself'). I don’t know how often «так тобі» is used in this meaning, I think «так собі» is much more popular in the meaning ‘so-so’.
тобі (є) п'ять років = "to you there is five years". We omit є all the time.
"Так собі" is a phrase which doesn't make grammatical sense, don't think too much about it :) It's like trying to explain the meaning of , say, "up to you" trying to translate each word in the phrase - doesn't work.
Sometimes it happens because unfortunately there is no way to set some sort of general pattern for "years old" to be optional and so on. In every exercise it has to be added manually, and it seems like it's done by different people who add different things and so on. You are right that even though Duo doesn't have a consistent system for it, we could at least write down some typical words and compounds used in exercises to reuse them consistently.
However, I just checked - in this exercise "Are you five?" is accepted. And it's been like this since 1 year ago. Was your comment about this exercise?