Re-implameted Moving. Added some interface.