Add conditional compilation of a pipes subset to Haskell98.

I gave this a try.

I don't really like testing for `` #ifdef MIN_VERSION_packagename `` because it doesn't say anything to someone reading the code.

I would preffer if we could test for something like `` #if !haskell98 `` ,  what do you think?

At first I thought that cabal will include the symbol defined by `` Flag `` in the auto generated header file but it does not. So the only good alternative would be to include our header file with our custom symbol defined.

Please tell me if this is what you wanted and if i've done it right. :-P

Thank you.