auto merge of #1605 : pcwalton/servo/harden-layout-more, r=metajack

Closes #1584.

r? @metajack
Add more documentation for layout.

+ Annotate functions with CSS Reference sections.
+ Clean up comments and whitespace.
Remove unnecessary ClipDisplayItems in box_.rs

For ScannedTextBox and ImageBox, the ClipDisplayItem's child_list is
currently always empty.

ClipDisplayItem is used to implement overflow hidden and should only be
created for block containers, as per
http://www.w3.org/TR/CSS2/visufx.html#propdef-overflow

Take care of the case when a BlockFlow has no children display items -
like an ImageBox with "display: block".
auto merge of #1578 : pradeep90/servo/stacking-context, r=larsbergstrom,larsbergstrom

For ScannedTextBox and ImageBox, the ClipDisplayItem's child_list is
currently always empty.

ClipDisplayItem is used to implement overflow hidden and should only be
created for block containers, as per
http://www.w3.org/TR/CSS2/visufx.html#propdef-overflow
implement position:relative
add ref test for position:relative
modify ref test & rename & fix left,right calc