(PSP/XDK) Free input_data inside free function
(XDK) Take out Xbox-specific destruction code in gfx_ctx_destroy
(PSP1) Free 'data' at end of free function
(PSP1) Correct video_init function so that it is no longer reentrant
(PSP1) Take out redundant memset in free function now that we free
video_data at the end
(XDK) Cleanups
(GX) Input - properly implement free function
(XDK) Properly implement XDK input free function
(QNX) Properly implement qnx input free function
(Android) Properly implement input free function
(GX) Properly set up GX video driver for proper teardown/setup
(PS3) Input - free data variable at end of free function
(GX) Audio driver - some cleanups
(XDK1) Remove manual usage of XInputClose in input free function
(Xbox) Seems that Xbox D3D does not free up all resources
for some reason and that they didn't anticipate full teardown/setup.
Not sure if I can confirm, but it has been hell so far trying to get
this to work. So, instead, implement a butt-ugly hack that forces
ownership over video/input lifetime state. Will properly refactor
the driver.*_data_own variables later so that this hack is less
ugly. Ideally we'd solve the teardown/setup problem but given this
is esoteric D3D gibberish - good luck debugging >_>
(XDK) Don't put early return in free function since this
function won't be called during game time anyway
(Xbox) Make hack less ugly
Reimplement driver.*_data_own variables so that they actually
work for a usecase now -

on Xbox, full teardown/re-initing of D3D context seems to be
error-prone - so by flagging driver.video_data_own to true inside
of the video_init function, we signal later on to the uninit_drivers
function that we DO NOT want to call the free function of this driver
and clean up the handle.

Instead, this driver should properly retain the handle by returning
the pre-existing handle when (for example) driver.video_data is
not NULL. You can see an example of this in xdk/xdk_d3d.cpp.

Overall still a quite clean solution and we will only use this in
extraordinary conditions (like this Xbox one I suppose) - full
teardown/setup will be the goal for all other platforms where we
can be certain that the state can be brought down and up entirely
during runtime without any problems.
Remove unnecessary uninit_video_misc
(XDK1) Compile with HAVE_FILTERS_BUILTIN defined