ICC library

Alicante's final deliverable
Granada's final deliverable