implement ik

implement a basic version of ik