Add SafeBoolean type

Signed-off-by: Rick Taylor <rick@tropicalstormsoftware.com>
Use new UniquePtr

Signed-off-by: Rick Taylor <rick@tropicalstormsoftware.com>
Silence valid warning

Signed-off-by: Rick Taylor <rick@tropicalstormsoftware.com>