A C++ template based image library