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.
Add setter for link weight range for NEAT populations

* The previous default value of 5.0 seems to come from HyperNEAT
* K. Stanley uses a value of 1.0 in his paper and his code
* Using a large weight range for regular NEAT results in new nodes
  hardly ever being added because doing so causes too great a change
  in the network (since the output link for the new node is set to the
  weight range value)
Add travis integration
Add Array.swap and use it
Fix JavaDoc errors
Make gradlew runable
encog-java-core #192: ColumnDefinition: default index should be -1
encog-java-core #194: NormalizationHelper is not serializable 
https://github.com/encog/encog-java-core/issues/194
encog-java-core #192: ColumnDefinition: default index should be -1 : Fix
line ending
encog-java-core #194: NormalizationHelper is not serializable - Fix line
endings
Merge pull request #195 from andrewthomas28/master

encog-java-core #194: NormalizationHelper is not serializable
Merge pull request #193 from janisz/enable_build_on_java_8

Fix JavaDoc to enable build on Java 8
Merge pull request #187 from JayH5/neat-weight-range

Add setter for link weight range for NEAT populations
Merge pull request #186 from JayH5/neat-init

Improve NEAT genome initialization
Merge with branch 'master'

Conflicts:
	.travis.yml