add FunctionManager class
add FunctionManager class
add user defined functions' container
add Analyzer class
improve FunctionManager class

- use map instead of vector internally
- modify the methods accordingly
Add function registration pass
improve the testfile
add isUserDefined method
fix string parameter constness
enrich test cases
remove SourceLocation from FunctionInfo
add CallInfo
use vector instead of map in FunctionManager
add addCall method to FunctionManager
change signature of addCall method
add matchers to get metadata for function calls