Implement theme support for structured-post-formats, which will supercede theme support for post-formats. Usage is the same as declaring support for post-formats: `add_theme_support( 'structured-post-formats', array( 'quote', 'video' ) )`. Adding `structured-post-formats` support also adds `post-formats` support for the given format(s) underneath.

Declaring support for a given format indicates that the theme handles format-specific metadata; admin UI will not change based on theme-declared support of either variety as it did previously. If no `structured-post-formats` support is explicitly declared for a format, a post in that format will have fallback output utilizing that metadata applied. In this way, a theme can style core-provided output for a full post format experience without having to handle metadata in any way.

props nacin. see #23347.


git-svn-id: http://core.svn.wordpress.org/trunk@23467 1a063a9b-81f0-0310-95a4-ce76da25c4cd
Post formats compat output:

* Check for theme support of `structured-post-formats` rather than `post-formats`.
* Use \n instead of PHP_EOL constant.
* Add new lines after opening compat wrapper tag for some `wpautop()` treatment.

props SergeyBiryukov. see #23347.


git-svn-id: http://core.svn.wordpress.org/trunk@23468 1a063a9b-81f0-0310-95a4-ce76da25c4cd