Got rid of smart_pointer_traits::null_value, replaced it with is_null_pointer free function. Got rid of obsolete polymorphic_cast stuff, and shared_*_cast stuff.