What about avoiding charging entirely. There are very high capacity batteries which are rechargeable but have the potential to power your device for a very long time. Once I iron out my Boron / deviceOS@1.5.1 / Enable sleep issues I plan to pick this project back up.
This has the potential to simplify your deployments as well if you can accommodate the requirement to change the batteries every once in a long while.