title: ConvertTo-Json fails to convert custom properties added to built-in types
body: <p>I'm trying to a add a custom property to a built-in PowerShell type and then convert the object to Json.  The problem I'm running into is that the ConvertTo-Json will not convert the custom property I'm adding.  For example,</p>
  
  <pre><code>$Proc = Get-Process explorer
  $Proc.Modules | %{
      $_ | Add-Member NoteProperty MyCustomProperty "123456" -PassThru
  }
  
  $Proc.Modules[0].MyCustomProperty -eq "123456"    
  # Returns true
  
  $Json = ConvertTo-Json ($Proc.Modules) -Depth 4
  $Json -match "123456"   
  # Returns false.  Expect it to be true
  </code></pre>
  
  <p>Edit: If I use "select *" with ConvertTo-Json, then it works. E.g.</p>
  
  <pre><code>$Json = ConvertTo-Json ($Proc.Modules | select *) -Depth 4
  $Json -match "123456"   
  # Returns true
  </code></pre>
  
  <p>Can anyone explain why this happens?</p>