Working version of heat transfer.
Set initial guess for linear solvers (to solution from previous time step)
Copying record keys in Input::Type::Record in separate method.

In future this may be useful if we want to copy one record to another.
Transmission coefficient sigma_c now computed automatically, based on the derived mathematical model.
Updated test configuration files and results (test 18).
Fixed initial nonzero guess setting for TransportDG.
Documentation of class AdvectionDiffusionModel (ADM).
Descendants of ADM implement method get_input_type so that the models can add their own input keys to the record.
 Sigma_c in TransportDG computed automatically from dispersion tensor and cross sections, the original input field sigma_c is now a multiplicative constant.
Update of test 18.
Fix initial nonzero guess in TransportDG when solver type is 'preonly' (e.g. when direct solver is used).
Implemented P3 cubic finite elements.
Update in DG method (diffusive fluxes on dirichlet boundary).
Corrected mass balance.
Updated documentation and tests.
Removed support for reading old bcd files in TransportDG.
Changed order of parameters in ConcentrationTransportModel::calculate_dispersivity_tensor().
Split advection_diffusion_model.* into separate files for the abstract class and each model.
Methods in ConcentrationTransportModel and HeatTransferModel marked 'override'.
Removed redundant member input_key_name_ and its getter from Model classes.
Mesh computes maximal number of edge sides (for a given dimension of elements).
Updated con files reflecting that TransportDG no longer supports old TBC files.
Coefficients ad_coef, dif_coef, mm_coef defined as members of TransportDG and allocated in constructor.
This saves some time during assembly and mass balance calculation.
Test 21 for flow+heat transfer.
2D domain + fracture parallel to the flow.
Test is not included in the automated system of tests.