In a large stockpot, sauté onions in butter until translucent.
Rinse lentils, removing any grit. Place in the stockpot; add stock, bay leaf, Worcestershire sauce, garlic, nutmeg, black pepper and celery salt. Bring to boil over high heat; reduce heat and add ham hock or ham bone.
Simmer for 2 hours. Add water as needed, I like it thick and rich so I add very little water.
After two hours, in separate saucepan, combine veg oil and flour. Heat over medium heat, stirring constantly until browned, to make a roux.
Once the roux is a light chocolate color, Temper the roux with a couple of ladle fulls of the soup fluid (try to leave out lentils). Add roux/soup mixture to soup, it will thicken slightly. Sometimes its nice to use a hand held blender(boat motor as Emeril would call it) and puree some of the soup. I generally give it a few pulses. (Just don't forget to remove the bay leaf!).
Simmer for as long as you care to on low heat, the longer the better! Two hours at least for good flavor.
When ready to serve; Remove the ham hock or ham bone. If you used a ham hock, you could break up the pieces of the meat and mix with the soup. Usually it has added all the flavor it can to the soup and the meat doesn't really add much in taste. So I don't do this. Add wurst and simmer 5 minutes more to heat through.
Serve hot, on top of a bowl of spaetzle.
Tastes even better the next day!