ensure load_connection_file works after self.session is created

only write to config if self.session hasn’t been instantiated,
otherwise write to session attrs.
build new Session auth when either key or scheme changes
add Session to ConnectionFileMixin

it’s used in a few places, so it doesn’t make sense for subclasses to lack it
ConnectionFileMixin is a LoggingConfigurable
test loading connection file after instantiating Session
use current cell's type when inserting

this preserve all previous behavior, but simply adds the ability to
insert cells without specifying a cell type, in which case the cell type
is inferred from the currently selected cell
inserting new cells preserves type  closes #4917
Merge pull request #5855 from minrk/load-after-session

ensure load_connection_file works after self.session is created
add tests for cell_type preserving insertion
Merge pull request #5882 from ivanov/preserve-cell-type

inserting new cells preserves cell type