refactored move code for automatic layouting, no special case for fanIns and fanOuts, layouting now works for all components, fixed edge case (jittering) for the top component automatically, fixed snapping for fans, fixed some cases for components that are very wide and have more than one component beneath them