Add AppendLineSmart Extension

Added AppendLineSmart extension method to complement existing
AppendSmart. Added tests for both AppendSmart and AppendLineSmart.
Fixes #29