title: Wrong return value in FromObjectDictionary method
body: <p>I noticed in ServiceStack.Text\PlatformExtensions.cs file that FromObjectDictionary method could return a wrong value.</p>
  
  <pre><code>    public static object FromObjectDictionary(this IReadOnlyDictionary&lt;string, object&gt; values, Type type)
      {
          if (values == null)
              return null;
  
          var alreadyDict = type == typeof(IReadOnlyDictionary&lt;string, object&gt;);
          if (alreadyDict)
              return true;
  
          var to = type.CreateInstance();
  
          PopulateInstanceInternal(values, to, type);
  
          return to;
      }
  </code></pre>
  
  <p>If alreadyDict is true I think that it should return values object. Anyway true value seems wrong and could cause an invalid cast exception.</p>
  
  <p>I don't know if writing here is the right procedure to submit issues in ServiceStack.</p>