moved to attributes map instead of fields
javadoc in-sync with the guide
refactor to have category, deviceType and variants on the correct level
adding javadoc to the getters
added missing descrs and minor formatting