hw_markup added to make width/height html markup optional.

This version works in in both template and shortcode mode.
Removed long else/if logic in get_markup().

Faced some trouble with sanitize function because it trims all the attributes: normally trim it's ok, but it behaves weird with booleans. So:

true turns into '1'
and
false turns into ''.

Catching booleans values after a trim operation is quite hard. That's why line 99 looks that way!

99th line gets 'hw_markup' after trimming and re-assign true or false values to the attribute. I think It doesn't need any escaping.

Possible workarounds:
1- write a regular expression function in place of the standard php trim
2- Invert 'hw_markup' attr logic and make it false by default.