Apply all changes from latest Marlin_V1

Diffed and merged, preserving my updates