If there is an error comparing traitlet values when setting a trait, default to go ahead and notify of the new value.

If a trait is not comparable with the default value (like None) or with other objects of the same instance, the comparing that is done to see if we should notify of updates fails.  With this PR, if comparing the object to the old value throws an error, we go ahead and notify of the new setting.

This problem prevented having a trait that was an Instance of a pandas dataframe, for example.  These examples didn't work before, but work with this pull request

```python
from __future__ import print_function # For py 2.7 compat

from IPython.html import widgets # Widget definitions
from IPython.utils.traitlets import Unicode, Instance # Used to declare attributes of our widget
import pandas as pd
class A(widgets.DOMWidget):
    _view_name = Unicode('PDView', sync=True)
    value = Instance(pd.DataFrame)

a=A()
a.value=pd.DataFrame([1,2,3])
print(a.value)
B=A(value=pd.DataFrame([4,2,1]))
print(B.value)
B.value=pd.DataFrame([[4,3,2],[5,4,1]])
print(B.value)
```