FP: flush m_code_level & check emptyness of m_end_offsets

This fixes https://github.com/DHrpcs3/rpcs3/issues/349
So, m_code_level is basically the indentation level.  Consider:

```
if (flag) {
   cmd1;
}

cmd2;
```

In this case, "if" is at the first level, "cmd1" is at the second, and "cmd2" is back at the first.

But now consider this:

```
if (flag) {
   cmd1;
}
```

Since it never gets back to level 1, the level is 2 at the end of the command stream.  This is what I'd meant about "flushing" m_code_level.  It probably needs 1 `}` for each m_code_level, but I'm not sure (it might be one less or one more.)

Anyway, m_end_offsets seems to say when the end is.  Normally, this is where the }s are added in `AddCode("}");`.  The last iteration doesn't check m_end_offsets to see if there are any that end right now.  So if that whole for loop was moved down, before the break, it might be enough to properly flush m_code_level.

-[Unknown]