add static array bound check in shape analysis
most important functions are arraySubsasgn and arraySubsref in
ShapePropagator. added detailed comments in the code.