flow: Use add_function_data() to clean up the code
This change hasn't really been tested, but I will test it before I push
it.
There are a couple pitfalls. The data has to be an unsigned long or a
pointer, so I changed a couple bool and int types to unsigned long. Also
I hope that the free_stree() calls happen before the original data is
restored. There were a couple comments to that effect in the code, so
I've worried about that before. I think everything works correctly.
Then when we start parsing a function the data should always start out
as zero. There were a couple places that did this manually, but that
code can be deleted so I went ahead and removed it.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>