When you want that much control, aren't you really just building a "thicker" Internet Rich Client like iTunes? http://en.wikipedia.org/wiki/Rich_Internet_application