added helper classes
added more template functions + debug output