Make code compile with clang_use_chrome_plugin (part II)

This change contains files in core directory which were not covered
in part I. This is part of the efforts to make PDFium code compilable
by Clang chromium style plugins.

The changes are mainly the following:
-- move inline constructor/destructor of complex class/struct out-of-line;
-- add constructor/destructor of complex class/struct if not
 explicitly defined;
-- add explicit out-of-line copy constructor when needed;
-- move inline virtual functions out-of-line;
-- Properly mark virtual functions with 'override';
-- some minor cleanups;

BUG=pdfium:469

Review-Url: https://codereview.chromium.org/2060913003
diff --git a/pdfium.gyp b/pdfium.gyp
index cebeb73..153864a 100644
--- a/pdfium.gyp
+++ b/pdfium.gyp
@@ -212,6 +212,8 @@
       'target_name': 'fpdfdoc',
       'type': 'static_library',
       'sources': [
+        'core/fpdfdoc/clines.cpp',
+        'core/fpdfdoc/clines.h',
         'core/fpdfdoc/include/fpdf_doc.h',
         'core/fpdfdoc/include/fpdf_tagged.h',
         'core/fpdfdoc/cpdf_variabletext.cpp',