added G4 hook to increase the timeout for serial communication
Fixed a bug causing the _default profile to be saved to a file instead of config.yaml
Make sure the printer profile fields are all of the correct type during validation
Don't hiccup on slic3r filament_diameter comments generated for multi extruder setups
Added entry to change log
Merge branch 'master' into devel
"autoconnect" parameter to "connect" command is not mandatory

Closes #675
Fixed jog controls

Closes #664
Actually use caching when reading metadata (was a write-only cache previously, way to go...)
More error resilience when logging success/failure of prints
Print time estimation is now not displayed until it becomes somewhat stable
Removed a left-over from print time estimation experiments that got overlooked
Removed a possible race condition when slicing to the same gcode file in direct succession
Added new plugin type ProgressPlugin

Plugins can implement that to get notified of progress in both print and slicing jobs in 1% increments.
Pauses in the print job are now cleaned from the basis for print time estimation, also switched to a rolling window approach for determining when estimation becomes stable
Merge branch 'issue_658' of https://github.com/vishnubob/OctoPrint into vishnubob-issue_658

Conflicts:
	src/octoprint/util/comm.py
Some minor cleanup
Fetch estimated print time from cura slicing result, create print time statistics per printer profile, interpolate between stats and live estimation during printing for print time left
If the G4 isn't returned, it won't be sent to the printer