incorporate tunneling solver into solverpack

- CHG : restructure the architecture of tunneling solver
- CHG : remove the class for tunnel test
- CHG : all the energy values are in eV and normalized with potential factor. Add method for energy normalization
- FIX : fix the value of Reference Potential
fix a bug in normalization of the vector value

FIX : fix a bug in VectorValue.Normalize()
fix some little but critical bugs.

- ENH : use { } in a case statement
- FIX : fix the problem of "int / double = int" occurs in tunneling solver
- FIX : fix the calculation and normalization of reference potential
combine the Poisson solver, tunneling solver and drift-diffusion solver

- ENH : enhance the architecture of the solver pack to integrate the Poisson solver, tunneling solver and drift-diffusion solver
- ENH : some revision on the drift-diffusion solver in order to be integrated into the solver pack
- NEW : saving the vector of dd vertices in the FDDomain class
- NEW : add new method for writing band information and density in SctmData
- FIX : fix the bug of setting the conduction band edge at the start and end point of the tunnling process in tunneling solver
use Scharfetter-Gummel method to obtain half-point current density
fix a bug in Scharfetter-Gummel method

- FIX : forget to divide deltaX(Y) in Scharfetter-Gummel method
merge result of using Scharfetter-Gummel method in master

- ENH : Scharfetter-Gummel discretization method can be switched on
revision on indent
the solver pack can run basically in this version.

- FIX : fix a bug in dd solver. fix the method in refreshing coefficient matrix with time step. (Because move the coeff-building method into the preparation of dd solver)
- FIX : move the building of rhs vector in the Poisson solver
- NEW : add the method for writing interface tunneling current
- FIX : fix the a bug when returning the result in tunnel solver