This fixes #1242, for position fixed sortables

When the sortables offsetParent has `position = fixed`, by dragging a
sortable the cloned element being dragged has the wrong position.

This PR adjusts that by using window and offsetParent scroll to adjust
the value.
cache `element.getOffsetParent()` to optimize

cache `element.getOffsetParent()` to optimize code after nice suggestion
from @anutron
make code more clear to read

Find better names to code to improve read flow and make variable names
more descriptive
fixes #1113 and fixes #1191

Added a new function to calculate better the position to work as
expected in cases where container has scroll, and position is fixed,
relative or absolute

http://jsfiddle.net/Hsf6W/
Fix Sortables with positioned offsetParent

When the sortables offsetParent has `position = fixed`, by dragging a
sortable, the cloned element being dragged has the wrong position if
the window or offsetParent  is scrolled.

This PR adjusts that by using window and offsetParent scroll to adjust the position value.
Added also a new function to calculate better the position to work as
expected in cases where container has scroll, and position is fixed,
relative or absolute

The buggy behaviour can be seen in this jsFiddle: http://jsfiddle.net/B5yn5/

Fiddle example with the correction: http://jsfiddle.net/Hsf6W/1/

( closes #1243 | fixes #1242 | fixes #1113 | fixes #1191 )