wrote bulk of the conv-hull code. It kinda works, but it's stupidly slow