Field branch

Made a new Class called field to replace Layer. The field class is making recursive thus every subfield is a separate field class.
The main reason I did this change was that when there are 2 fields with same name the old Layer Class would save only the last appearance.