Some implementation + little API corrections