Allow starting the server with both file_to_run and notebook_dir

file_to_run and notebook_dir would collide, with possible dictionary ordering randomness depending on how they were passed.

With this change, the default value of notebook_dir is pulled from file_to_run, instead of pushing the value when file_to_run is changed. This makes it possible to specify both and have the server behave as expected.
Good point, done.