Improve NEAT genome initialization

* The NEAT genome initialization ensures that there is at least one
  link in a newly created random network. The problem was that this
  was achieved by always linking the bias node (node at index 0) to
  the first output node (node at index `inputCount + 1`).
* This change ensures that there is some link between *input* and
  output nodes by creating a link from a random input node to a random
  output node if one was not created during the regular link
  initialization procedure.
Merge pull request #186 from JayH5/neat-init

Improve NEAT genome initialization