Class restructure and new methods.