Moved around `#-}` ending RULES blocks to get Vector to build

The ending `#-}` of a RULES block would cause an error if it was on a new line
by itself. In these cases I moved it up to the next non empty line.

Combinine #ifdef in a rules block caused additional problems.
An error was caused if the RUlES block ended with

    #endif #-}

In these cases I copied `#-}` into each branch of the #ifdef.

os: mac osx 10.9.2

$ gcc --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn)
Target: x86_64-apple-darwin13.1.0
Thread model: posix

$ ghc --version
The Glorious Glasgow Haskell Compilation System, version 7.6.3

$ cabal --version
cabal-install version 1.16.0.2
using version 1.16.0 of the Cabal library
Provide IsList for Data.Vector, conditional on GHC >= 7.8.0.
Correct CPP conditional for IsList instance.
Merge pull request #23 from Davorak/master

Moved around `#-}` ending RULES blocks to get Vector to build
Fixed a trailing space and spurious comment from merge
Include MachDeps.h in files that use WORD_SIZE_IN_BITS
Remove some extra white space
Merge pull request #26 from fmapfmapfmap/overloaded-lists

Provide IsList for Data.Vector, conditional on GHC >= 7.8.0.
Fixed __GLASGOW_HASKELL__ tests for IsList
Implement IsList for Primitive, Storable and Unboxed vectors
Enabled -Wall
Fixed warnings in Data/Vector.hs

- Qualified Prelude import was unnecessary
- Renamed force to rnfAll in rnf implementation
  - removed the bang pattern on ix to avoid reindenting; it should have had no
    effect because the first thing the function does is test ix < n
Fixed warnings in Data/Vector/Mutable.hs

- DeepSeq imports were unnecessary
- Changed some unused variables to _
Fixed warnings in Data/Vector/Unboxed/Mutable.hs

- Avoided an import of Data.Vector.Internal.Check from vector.h
- Fixed some unused variables in unbox-tuple-instances; more will be required for
  other modules.
Fixed most warnings in Data/Vector/Unboxed.hs

- Qualified Prelude import was redundant
- Data.Vector.Internal.Check import from vector.h was redundant
- Fixed more unused variables in unbox-tuple-instances
- Orphan instance warnings remain. They will be dicier to remove, so I'll
  disable the warning instead
Don't warn about orphans
Fixed warnings in Data/Vector/Unboxed/Base.hs

- Unused import from vector.h
- Many unused variables, mostly in unbox-tuple-instances
Fixed warnings in Data/Vector/Storable.hs

- qualified import of Prelude was unnecessary
- Data.Vector.Internal.Check from vector.h was unnecessary
- unsafeFromForeignPtr had a warning about a RULE not working
  - switched INLINE to INLINE_FUSED to allow the rule to fire
- eliminated unused variable bindings
Fixed warnings in Data/Vector/Storable/Mutable.hs

- Foreign.C.Types was unused
- Data.Vector.Internal.Check from vector.h was unused
- Removed unused variable bindings
- Changed INLINE to INLINE_FUSED on unsafeFromForeignPtr
  - was potentially preventing a RULE from firing
Removed unused Prelude import in Data/Vector/Primitive.hs