I hear you, it takes some effort to get op_checksig right. Here are some answers:
> 1. In the linked picture what is "script part 4"?
Whatever comes after OP_CHECKSIG in the script. Nothing says OP_CHECKSIG has to be the last operation of the script.
> 2. Is it correct that script part 1 is R and S concatenated and compressed with DER encoding?
No, in that picture, script part 1 and 2 are previous instructions in the script. Nothing says the OP_CHECKSIG sequence of instructions has to come first in the script, any arbitrary processing supporting by the scripting language can happen before.
> 3. Is script part 2 the pub key?
No, per step 1, the pubkey and signature are on the stack. What you see in step 2 is the script. Running the script affects the stack but they're still distinct structures.
> 4. If yes, is the pubkey also DER encoded?
There are more than one possible encoding. Read this too:
https://en.bitcoin.it/wiki/Technical_background_of_Bitcoin_addresses> 5. Where is the implied script part 3?
It's the actual OP_CHECKSIG standard sequence, from OP_DUP to OP_CHECKSIG itself.
> 6. Can OP_CODESEPARATOR be left out entirely without invalidating the script?
Yes, it's optional. The separator is only needed for some scripts that may have more than one OP_CHECKSIG operation in them for example.
> 7. Basically what is the byte-wise format of the claim script, this is my own educated guess:
It's a little more complicated. I'd recommend looking at the source code of bitcoind and other implementations out there, it helps.