Honor `deep: false` when converting Maps. (#60)

Currently toObservable always converts maps deeply.
diff --git a/lib/src/to_observable.dart b/lib/src/to_observable.dart
index be83cb2..c1ddc96 100644
--- a/lib/src/to_observable.dart
+++ b/lib/src/to_observable.dart
@@ -34,13 +34,8 @@
   if (value is Observable) return value;
 
   if (value is Map) {
-    return extractMapTypeArguments(value, <K, V>() {
-      var result = new ObservableMap<K, V>.createFromType(value);
-      value.forEach((k, v) {
-        result[_toObservableDeep(k)] = _toObservableDeep(v);
-      });
-      return result;
-    });
+    return extractMapTypeArguments(
+        value, <K, V>() => new ObservableMap<K, V>.from(value));
   }
 
   if (value is Iterable) {