Opinion and legality are different things.
One of the eyewitnesses claimed Brown was charging the officer while another said it looked like Brown was disoriented moving towards the officer.
I have no idea from the information that has been released.
Certainly our opinion does not matter.
I don't know the legal wording, but I imagine that the officer would have to feel his own life was in danger in order to justify lethal force. And I think most people (including most importantly the Grand Jury members) would feel that if a 300 lb man who had already assaulted was rushing towards them, then their life would be in danger.
So the question does become was he rushing towards the officer. And if as you stated, two different eyewitness reports gave two slightly different stories, then its easy to see why the Grand Jury decided there was not enough evidence to proceed. Especially since its being reported that the forensics evidence matches the officers story. Ambiguous eye witness reports plus forensics = no trial.
Of course, since its a Grand Jury and not an actual trial, should more evidence become available later, then they can still proceed to trial (I think).