start to make CellIter work as a true iterator.
clean up CellIter iterators
the real iterator over the cell lists seems to be working
start to use real iterators in cell lists
CellIter now only uses the iterator mechanism
Merge branch 'master' into cell_lists
add documentation and comments
a few small updates
fix non-portable code

clang on osx complained that std::vector<>::const_iterator had a private
constructor.
AtomInCellIterator now stores it's own end point

this makes AtomPairsInTwoCells a little simpler.
remove some of the unnecessary safety checks from cell iterators
Merge branch 'master' into cell_lists

to include cell_lists benchmark
Merge branch 'master' into cell_lists
change cell lists to use accumulators rather than iterators

These work as callback functions for a looping algorithm
simplify the structure a bit
remove iterators from CellIter

some test now fail.  I'll fix them soon.
Merge branch 'master' into cell_lists_callback
fix a test I broke in the previous commit
clean up the cell lists looping a bit
rename CellIter to CellLists

it does not use iterators anymore