Make width and height more jQuery-compatible and add inner and outer width and height

Made width and height getters, and inner and outer width and height equivalent to their jQuery counterparts when called on window, document or a descendant of document.
Calling any of these functions on elements that are not window, document or a descendant of document returns zero because it is not possible to guarantee a correct pixel value (jQuery v1.7.1 parses the raw style value, which could be in any unit of measurement).