I have done option #2 two years ago and depending on your layout requirements, this is by far the easiest.
Option #1 is almost impossible as there bigger parts of the IViewPart
functionality that cannot be delegated to a sub-part. Just see how pervasive the multi-editor code is - you can find instanceof
tests deep in the org.eclipse.ui
code.
Option #3 can probably be done, but only by loosing the palette, as this seems to refer to editor stuff deep down (at least this is in my notes from 2 years ago :-))