modified NodeFinder so it has the option of ignoring nodes that are children of certain types of nodes, eg Function definitions
added methods to merge taint values and taint results respectively in TaintResult, which will be used to store a variable's taint info
created taint results environment, which keeps track of a set of variables and their taint results
get rid of definition field from VariableInfo
TaintEnvironment will be kept as the taintEnvironment attribute in an environment. Search up parent environments for the TaintEnvironment of a given variable
with taint propagation for assignment nodes
with taint propagation for assign op nodes
do not modify environment of original Assign Expr of the AssignOp's variable
with method to get a variable's taint annotation
with rewrite of taint analysis for expressions, pending analysis for function calls
done handling of statements in NodeAnalyser
updated basic test to test NodeAnalyser
abstract creation of taint results so NodeAnalyser can be reused for functions
fixed bug in TaintEnvironment merging
added new test for if-else
fixed merging of taint environments
return Annotation::UNASSIGNED if taint result is not found in current environment
fixed statement taint annotation combining
fixed annotation for if-else
add missing test fixture