allow specialization of get_element_type if using a smart pointer with a different mechanism for looking up the pointee type
comment
Use custom JavaScript exception types in embind and throw a BindingError when trying to pass a non-object to a function that expects an object reference.