New analysis passes

I have checked in 3 new analyses:

1. IPModRef (analyze -ipmodref):
   This is a Module pass that computes flow-insensitive context-sensitive
   interprocedural Mod/Ref information for a program. It uses DS Graphs
   to track mod/ref info for distinct data structures.

2. MemoryDepAnalysis (analyze -memdep):
   This is a Module pass (but will eventually be a Function pass) that
   computes a DependenceGraph for all data-dependences on memory locations
   within each function (i.e., the nodes are Instructions; the edges are
   data dependences). This pass uses the IPModRef pass to find dependences
   on Call instructions. It does NOT do any non-trivial array dependence
   analysis yet.

3. PgmDependenceGraph (analyze -pgmdep):
   This is an iterator (not a pass) that is intended to enumerate all
   dependences in a function, including data dependences on memory and
   on SSA registers, and control dependences. It does not build an
   explicit graph in order to avoid creating a second representation of
   SSA def-use edges.

   Caveat: Control dependences are not implemented yet, so this iterator
   only enumerates data dependences at present. Also, this pass has only
   been lightly tested.

--Vikram
http://www.cs.uiuc.edu/~vadve