title: ReactiveSwift mutable property with read only public access
body: <p>I have a class with enum property <code>state</code>. This property's value (by value I mean <code>ReactiveSwift.Property</code>'s value) needs to be accessed and observed by other classes, but value change should be private. Currently it is implemented in a such way:</p>
  
  <pre><code>enum State {
      case stopped, running, paused
  }
  
  var state: Property&lt;State&gt; {
      return Property(mutableState)
  }
  fileprivate let mutableState = MutableProperty&lt;State&gt;(.stopped)
  </code></pre>
  
  <p>This pattern allows me to modify <code>mutableState</code> property within class file. At the same time outside the class state is available only for reading and observing. </p>
  
  <p>The question is whether there is a way to implement a similar thing using single property? Also probably someone can suggest a better pattern for the same solution?</p>