refactored all changes to minStart, minEnd, maxStart and maxEnd in
Fields are now done with functions that also updates the corresponding
end or start
added functions to Field for:
* checking if index is in span
* check if field is only field with index in span
* update field span with index
fixed function that updates completeFields, now a complete field forces
an incomplete field to begin after maxEnd + 1
fixed bug where a field could overlap the previous fields minEnd
solves random 15x15 problem