[WIP] Keep line breaks and allow ranges on config files

I won't have time to finish this task today so pushing it here in case anyone have comments or want to contribute.. 

I tried to do it in small steps but failed a couple times. no way to avoid the large refactor since white space and line breaks logic are really tightly coupled.

so far there are many tests failing but some of them should not be that hard to fix (even tho that doesn't mean all settings are working as expected).

see #1
see #84