2014: refactor

move some internal-used methods to CssBoxExtension
and make it an extension method
2016: Remove First and Last HostingLineBox

1. Remove FirstHostingLineBox and LastHostingLineBox Properties (and
fields)
from CssBox,
2. Use GetSplitInfo() method of CssBoxExtension to test if a CssBoxLine
is
first host line or last host line of that CssBox
2017: Remove a CalculateWidthMarginRecursiveUp()

Remove CssBox. CalculateWidthMarginRecursiveUp() -> this is a recursive
method,
then Use LayoutArgs. CalculateWidthMarginTotalUp() instead (use
accumulation of total margin)
2018: fix
Merge remote-tracking branch 'origin/v1.7'

Conflicts:
	Source/HtmlRenderer/BoxModel/Boxes/CssBox.cs
	Source/HtmlRenderer/BoxModel/Boxes/CssBox_Fields.cs
	Source/HtmlRenderer/BoxModel/Boxes/CssBox_Unsafe.cs
	Source/HtmlRenderer/BoxModel/Boxes/CssLineBox.cs
	Source/HtmlRenderer/BoxModel/Builder/CssBoxExtension.cs