Custom Malloc and Free function implementations, for take home assignment.
V1 => uses first fit algorithm, stores the data and meta data in a form of a linked list V2 => failed version. does not work V3 => uses a Binary search tree to store the available slots. First fit is combined here; V4 => uses the Binary Search Tree. But uses the best fit for allocations.