Low-power Li-Ion Battery Charging
TP4056 is one of the cheapest solutions.  Assembled avail online as below, $2cdn ~$1usd on sale with this data sheet . It uses the 3 stage charge standard method  1A-CC, CV , Shutdown @100mA cutoff (10%A-max)


  Unlike many other IC's designed for 500mA max with external drivers, this one regulates CC mode at 1000 mA with an internal driver. 


https://dlnmh9ip6v2uc.cloudfront.net/datasheets/Prototyping/TP4056.pdf


Another solution is this similar but non-compatible 
 http://cds.linear.com/docs/en/datasheet/405642f.pdf

The LTC®4056 is a low cost, single-cell, constant-current/constant-voltage Li-Ion battery charger controller with a programmable termination timer. When combined with a few external components, the LTC4056 forms a very small standalone charger for single cell lithium-ion batteries.

Charge current and charge time are set externally with a
single resistor and capacitor, respectively. The LTC4056
charges to a final float voltage accurate to ± 0.6%. Manual shutdown  is  accomplished  by  grounding  the  TIMER/SHDN pin, while removing input power automatically puts the LTC4056 into a sleep mode. Both the shutdown and sleep modes drain near zero current from the battery; the shutdown mode reduces supply current to 40μA.

The  output  driver  is  both  current  limited  and  thermally protected to prevent operating outside of safe limits. No external blocking diode or sense resistor is required. 

The LTC4056  also  includes  low  battery  charge  conditioning (trickle charging), undervoltage charge current limiting, automatic recharge and a charge status output