#1 - an in-service Roth 401K conversion is nearly as good as in-service rollover/conversion to Roth IRA, so that's a non-issue in my mind.
If you make an unqualified withdrawal directly from the Roth 401K, then it will be prorated between basis and earnings, and you'll pay tax and penalty on the earnings portion. However, the fix is simple - roll the Roth 401K to a Roth IRA upon termination. The basis follows (make sure you have good records), and is treated as regular contributions to the Roth IRA or Roth conversions as the case may be on the original money.