All of those things seem like relatively minor costs when spread out across a large employee base, but I could see it being prohibitive for a smaller company. Or maybe this is a solved problem and you can just find some boilerplate stuff online that takes care of the whole process.