In a stock pot, melt butter. Add in onion and saute until golden, about 10 minutes. Whisk in flour and salt. Gradually whisk in milk, half and half, chicken broth, and water.
Add in cauliflower and bring to a boil. Reduce heat to a simmer. Cover and simmer for 15 minutes or until cauliflower is tender.
Use and immersion blender or in a blender in batches(with the lid cracked to allow steam to escape), blend soup until very smooth.
Stir in mustard and cheeses. Heat until melted and smooth. Serves 4-6.