title: IObserver is missing methods
body: <p>The <code>Observable</code> class already works, however I am still struggeling with the <code>IObserver</code>.</p>
  
  <p>In the Xamarin documentation for the 'IObserver' it says, that I only have to implement the <code>Update()</code> method for the <code>interface IObserver</code>.</p>
  
  <p>My problems:</p>
  
  <ol>
  <li><p>when I add the <code>: IObserver</code> I get an error that I do not implement these two methods:</p>
  
  <pre><code>        public IntPtr Handle =&gt; throw new NotImplementedException();
  
      public void Dispose()
      {
          throw new NotImplementedException();
      }
  </code></pre>
  
  <p>Why do I need these methods and what are they for? They are not mentioned in the Xamarin documentation.</p></li>
  <li><p>When I add these methods, I get the follwing error message:
  error XA4212: Type <code>firstTry3.bluetoothConnectionActivity/deviceFoundObserver</code> implements <code>Android.Runtime.IJavaObject</code> but does not inherit <code>Java.Lang.Object</code> or <code>Java.Lang.Throwable</code>. This is not supported.</p></li>
  <li><p>When I add <code>override</code> to the update method, the compiler says that there is no suitable method to override</p></li>
  </ol>
  
  <p>Here is my code:</p>
  
  <pre><code>        public class deviceFoundObserver : IObserver
      {
          bluetoothConnectionActivity mActivity;
  
          public deviceFoundObserver(bluetoothConnectionActivity a)
          {
              mActivity = a;
          }
  
          //function is called from subject observable whenever a change happened
          public override void Update(Observable observable, Java.Lang.Object data)       //perhaps arguments like this: Observable observable, Object data
          {
              //there could be other messages as well, so first check wheather it is the right call from observer
              if ((string)data == deviceName)
              {
                  mActivity.buttonStartEKG.Visibility = ViewStates.Visible;
                  Log.Info(constants.tag, MethodBase.GetCurrentMethod().Name + ": Observable called update function in Observer");
              }
          }
      }
  </code></pre>
  
  <p>I assume that I got something wrong in the way the Observer is used. Can anyone help me out?</p>