title: define operator[] for assignment and for reading
body: <p>Is it possible to have two definition of <code>operator[]</code> for the following two cases?</p>
  
  <ul>
  <li><p><code>My_bit_array[7] = true;</code></p></li>
  <li><p><code>bool x = My_bit_array[0];</code></p></li>
  </ul>
  
  <p>This is useful because reading a bit and toggling one of the 8 bits of a byte (<code>uint8_t</code>) are different. These two cases would require two different definitions.</p>