add settings as a crosscutting concern
add block evaluator
better neurons, add layer + tests
Merge branch 'develop'

* develop:
  better neurons, add layer + tests
  add block evaluator
  add settings as a crosscutting concern