Replace draw_divider setting with draw_(soft|hard)_divider

Previous variant was bad because
1. draw_divider only applied to soft dividers. Hard dividers were always drawn
2. But there was a hack with width=auto segments: for this segments draw_divider 
   setting applied always.

Now there are no additional dependencies: draw_*_divider applies no matter what 
other properties of the segment are.
Replace draw_soft_divider setting with draw_inner_divider

If weather or system_load segments were moved to the left draw_soft_divider
variant resulted in incorrect renderring. Thus it was replaced by
draw_inner_divider.
Remove update_first set from set_state

It is already handled correctly in .render() method
Fix cwd segment, add use_path_separator option

cwd segment was not drawing inner separators because of new default for 
multisegment functions. use_path_separator was added because current variant 
looks bad for my taste.
Also do the same for `last_pipe_status`
Add more assertAccessEvents

May fix travis build
Use clear_events, do not assert.
Do not use create_renderer from a separate thread

Also moves functions from tests.test_config_reload to tests.lib.config_mock

Using create_renderer for vim results in vim access from a separate thread.
Lock create_renderer_kwargs separately from configs
Exchange if and with cr_kwargs_lock
Fix typo

Fixes #387
Fix problems with tests
Merge remote-tracking branch 'zyx-i/dividers' into develop
Add parameters to shorten uptime display

Ref #316
Update tests
Make Tmux and PangoMarkup Renderers merge arguments like shell one

For PangoMarkup it is pretty useless currently (segment_info does not contain 
anything useful).

Note: this does its job by replacing default behavior.

Source of issue: previous default used either segment_info argument (containing 
{"args": args, "environ": os.environ}) or default segment_info, shell renderer 
merged default segment_info with .render() argument. Now segment_info is merged 
by default and old behavior moved to vim renderer which is the only one that is 
designed to use this.

Fixes #391
Update only if segment_info is not None
Merge remote-tracking branch 'zyx-i/fix-391' into develop
Add timeout to thread join calls to avoid deadlocks
Increase external IP polling interval to 5 minutes