A compendium of optimization objectives, constraints, tools and algorithms for energy management in microgrids. (May 2016)