Take 2: Fix issue #561 (bogus "Invalid Param name" error)

First attempt was both broken and ill-conceived.
So an unregistered Parameter won't show up when enumerating params, but will show up in the signature of the generated function? If my understanding is correct it would nice to state that explicitly here.