Cross eddy lines using the barrel roll and puncture eddies perpendicularly.  Basically, catch eddies high just like you do in a boat.  Puncture the eddy line on an angle and barrel roll to flip over the eddy line instead of bouncing off.  This is a good video on dealing with eddies and the barrel roll technique: Swimming into an Eddy.

When swimming in fast water, all the same boat principles apply.  Point yourself upstream towards the point you are trying to reach in a ferry angle.  Punch eddies perpendicularly and roll the body over to cross the eddy line.  Most of the time, your feet are pointing downstream to protect against foot entrapment.  The exceptions are going over strainers and quickly crossing eddy lines.

When transitioning from defensive to aggressive swimming, simply roll from your back to your belly.  Make certain you keep your feet on the surface to avoid foot entrapment.  Aggressive swimming works best in deeper water, over 2' in depth.  Swimming in pushy water is very tiring, especially if the water is cold.  Plan on using short sprints of aggressive swimming to reposition or get to a close by objective.  Take breaks by flipping back to defensive swimming.  Be very careful when you reach shallow water.  It will be extremely tempting to stand - make certain the water is shallow enough and take your time.

When swimming in very pushy water, we need to keep our wits about us.  All your river running skills still apply except you are now using your swimming skills to ferry, catch eddies, and run drops.  Since your head is just inches above the water, you need to time your quick peaks for the tops of waves and look side to side as well.  A body doesn't make the best boat so it is essential to use river currents and features to do most of the work for you.  Plan your moves well ahead of obstacles so you can work with the current and eddies to make the move.  If you see a good mid-stream eddy you can quickly catch, position and use aggressive swimming to catch the eddy.  Once in the eddy, you may be able to climb up on the rock.  The nice part is you now have a break to catch your wind and plan the next move.

Canoeists often stand up in the boats in the flats above rapids so they can take a quick peak at the rapids below.  Swimmers can quickly lift their heads out of the water for a better view.  You can do this occasionally while aggressive swimming as well, much like a porpoise cresting waves.

In large wave trains, you are going to get dunked - even with a good lifevest.  Hold your breath, relax and don't panic.  Deep water waves are pretty safe and you will resurface soon enough.  Once you surface, grab a quick breath and try to predict when you may get dunked again.  Once you have crested the wave, you have a great opportunity to scout.  Here is a great video demonstrating swimming in exceptionally high water and conserving energy: Staircase High Water Swim.