Unified the interface of the allocators
Implemented greedy heuristic (based on Guazzone's algorithm)
Improved the handling of ILP solvers
Initial commit