Use ViewCB<? extends PresentationModel instead of Initializable type
Add 2 sub screens for preferences
Rename settings package to preferences
Refactor Settings model to 2 separate models
Rename usage of settings to applicationPreferences
Move io.bitsquare.{=>app.}BitsquareEnvironmentTests
Polish and test BitsquareEnvironment

 - Introduce a test-time dependency on spring-test module for access to
   MockPropertySource and friends.

 - Add BitsquareEnvironmentTests and test that property source precedence
   works as expected, i.e. that properties supplied on the command line
   have highest precedence, overriding those picked up via environment
   variables, system properties, the bitsquare.properties file or any of
   the other available property sources.
Add app preferences UI
Rename config file from bitsquare.{conf=>properties}
Remove unused ApplicationPreferences variable
Rename name, port properties to node.name, node.port
Use Preconditions#checkNotNull vs. #checkArgument
Introduce 'app.version' property and remove hardcoded version
Reorder methods in BitsquareEnvironment for clarity
Merge branch 'cbeams'

* cbeams:
  Reorder methods in BitsquareEnvironment for clarity
  Introduce 'app.version' property and remove hardcoded version
  Use Preconditions#checkNotNull vs. #checkArgument
  Rename name, port properties to node.name, node.port
  Remove unused ApplicationPreferences variable
  Rename config file from bitsquare.{conf=>properties}
Add 'appJar' and 'bootstapNodeJar' tasks to build

The build now exposes two explicit ShadowJar tasks: one for the main
JavaFX client (`appJar`) and one for the headless bootstrap node
(`bootstrapNodeJar`).

Run as follows:

    ./gradlew appJar
    -- or --
    ./gradlew bootstrapNodeJar

The resulting executable jar for each will be found in the `build/libs`
directory.

Thanks to @johnrengleman for his help at johnrengelman/shadow#108

Resolves #265
Resolves #252