Syncing
Tidying up some of the more dubious code, adding specs; support code writted to fix bug with some attributes being misparsed but needs adding and testing