title: How to distinguish boolean & integers after deserializing JSON?
body: <p>So, here's the problem:</p>
  
  <ol>
  <li>__NSCFBoolean &amp; __NSCFNumber are private</li>
  <li>-[NSNumber boolValue] will cast 0/1 to NO/YES</li>
  <li>It's not a question right now, that having false/true/0/1 as possible values in JSON is a bad idea</li>
  <li>So how should one correctly distinguish between deserialized boolean &amp; integer values?</li>
  </ol>