RMeta api
=========

-- zignature stuff --
* zf name fmt    define function zignature (fast/slow, args, types)

** xrefs stuff should be delegated to the flags? (dont think so..)
 - we can generate xrefs metadata from flags analysis
 - we can use r_meta as 'static storage' and flags as playground.
** data_* api should be refactored to use less functions with more
   flexible arguments.

What we need:
- a database of data types
	Ct char* 4 z
	Ct void 0
	Ct int 4 d
	Ct ut32 4 x
	Ct ut64 8 q
- a database of function signatures
	CFt printf void=char*,...
	CFt puts int=char*
	CFt system int=char*
	CFt exit void=int
- to store on each function
  - fastcall ?
  - local { vars, args } + type + arraysize + name
  - framesize (should be detected by the code analysis
- casting between types
  - signed/unsigned
  - different size
  - all cast operations must be supported?
- serialization/deserialization of strings into structures

* We need a way to follow a variable access along the function flow
  - r_anal_access (RAnal, RAnalFcn, RAnalOp);
    - analyze opcode to update function vars/args accesses and determine function calls..
  - to determine it's type and if it's stored in a register or pushed
    in the stack before being used
  - RAnalVar r_anal_var_from_value(RAnal, RFunction fun, RValue *val);
    - return a variable reference for a variable
