Initial commit
The system now could discharge and charge for constant power
Add harvesting source, the load is able to set vdd, execution time
The ChargeProcess will output to a file using append.
The main function will use charge or discharge based on
the current harvesting energy.
Output power input to the output file
Use the total_time_index as the counter
Modified the DischargeProcess.cpp so the input/output voltage
current become member of the class.
Add DCSolver using sundial code for solving vout
When the solver can not solve the equation
starting from the lower bound, start from upper bound
make the switch resistance to 0
Use the baseline policy
Merge branch '4x1' into fast_4x1
Modify the error handeling in DCSolver
If it can not find a valid solution,
just assume the output voltage is same to bank
open circuit voltage which means there is no current.
This is particularly useful for binary search in baseline.

Fix a bug in compute the power in boost mode

The tolerance TOL is set to 1.e-3 instead of 1.e-1
So that the solution is better.
Merge branch 'master' into fast_4x1
Add the ees_bank class, an abstract class, so supcapacitor bank and
battery bank can inherite from it.

Modify the interface of the functions in the all the classes
So they can take the ees_bank class
Combine our policy and optimum cti function together
in charging process together, use
std::tr1::function and std::tr1::bind to
combine them together
Add a POWER_INIT state to distinguish if we need
to check the power input is enough or not

Change the interface of ChargeProcessApplyPolicy
Add the sundial solver for the discharge DC-DC converter
When the sundial solver can not solve the problem, then
call the Matlab solver.

In main, add the check when the energy is below 0
Merge branch 'master' into fast_4x1
Add different power charging status
Add power approximation function and more error check when solving discharing equations

DCCon_dis.cpp : more error check when solving discharging equations
If a bank can not be discharged, set the electrical charge to 0

DCSolver.cpp : Add power approximation function and manual solver, not really used
DischargeProcess : Modify the terminate condition, if the charge is 0, quit

SuperCap : Add the function to check if the configuration is most serial or parallel

ees_bank : Add the invalid the bank for discharging will be used later
Add a HEESTimer class to manage the timer globally

Remove the time counting in the main.cpp
The time is obtained from polling the HEESTimer

Add time counting code in the ChargeProcess
They should be added into DischargeProcess as well,
not done yet