Maggie - you can earn miles for British flights transatlantic on British's and Alaska's program but cannot earn miles for these flights on American's program.
If you're trying to earn miles from the whole trip on one program, I believe that Alaska is the way to do it.
Northwest has followed Continental in becoming very stingy with their award seats where it is rare to be able to obtain awards at the lowest mileage required, they tell you seats are available at the "premium" award level which is double the mileage. For your Northwest and KLM flights, another alternative would be to credit the mileage to Delta (they're now all part of SkyTeam).