More major work on shorthand and implicit properties

- see tmpvar/jsdom#896 and tmpvar/jsdom#897
- now handles empty string in implicit and shorthand properties
- now handles transfored implicit and shorthand properties
- removeProperty actually removes empty values
- bumped version