Add: Hashtable testing

Features:
- do multiple allocation
- do multiple deallocation
- measure time needed to do expected functionality
Hashtable a bit faster + Fix to tree_t + Add free to data_ops

- hashtable:
    - Mod: get_keys() and get_values() return lists, no more need to
      construct it through tree recursion
    - Mod: double hashing and use of buckets make it faster (+ collision
      resolution)
    - Fix: Some memleaks due to non freed lists for instance

- tree:
    - Mod: use double ptr in tree_free() and tree_destroy() so we ensure
      a node is not freed twise (double frees avoidance)

- data_ops:
    - Add: free() operation
Fix some memleaks in data/hashtable and data/list