Core component of SQL Server for storing, processing, and securing data
When you restore a database to a higher version, the lower compatibility level is retained; you must always set it explicitly.
The same applies if you do an in-place upgrades, both to user databases and master. (But looking at some instances where I have a made an inplace upgrade, it does change the compat level for msdb, model and tempdb.)
I don't know why the raise the compatibility level for master, but presumably it is because they don't have any code that fails with a lower compat level. So they stick to the lower level, just in case you would have put something in master yourself that would break with the new compat level. Presuming that you have not done that, there is no reason not to set the compatibility level to 170.