ENYO-2407 Add Ability to edit properties of top-level component

Enyo-DCO-1.1-Signed-off-by: Jeremy Thomas <jeremy.thomas@lge.com>
fixing merge conflicts
Adding support for user-defined properties in top-level kind

Enyo-DCO-1.1-Signed-off-by: Jeremy Thomas <jeremy.thomas@lge.com>
Renaming property

Enyo-DCO-1.1-Signed-off-by: Jeremy Thomas <jeremy.thomas@lge.com>
Fixing merge conflict
fixing merge conflict
Now retains correct kind name, unpublished props, functions defined before components block
removing unused var
Merge pull request #486 from enyojs/ENYO-2407-jeremythomas

ENYO-2407 Add Ability to edit properties of top-level component