Bug Fix:  Boolean Parameters not handled correctly

The conversion of parameters into boolean was not working correctly.  It would interpret anything or even the mere existence of the key as true since bool(str) == True.

This defines what values are considered true and converts correctly.

Furthermore, I have included the requested unit tests which pass.