Hi, Buster. An oil based poly will give you the most protective finish that you can get. Water or humidity will not get through it as easily and it will give you some flexibility to resist abrasion that the shellac will not.
Unfortunately, your contractor will want to use a water based poly because it dries so quickly--the same reason that they recommend shellac. They can be done with the finishing in one day with the quicker drying products versus 3 days for the water based poly or shellac and the chances of dust getting in the finish because of inadequate clean-up are less. One of the major manufacturers of oil and water based poly told me directly that the oil based was a much better product for floors and my results have borne this out. I think that the water based polys give you a milky appearance in certain light but most of the time they look ok.