title: Flow: why does it complain about string being null / undefined?
body: <p>I am still try to grasp how Flow works, anyone could explain me why this simple example is throwing an error?</p>
  
  <pre><code>function say(text: string) {
    console.log(text);
  }
  
  say('Hello World!'); // This is alright
  
  const text: ?string = 'Hello World!';
  say(text); // Error:(219, 5) Cannot call `say` with `text` bound to `text` because null or undefined [1] is incompatible with string [2].
  </code></pre>
  
  <p>I know, the text variable can be null, but by the time I call say(text) it is clearly not null.</p>