Added missing classes copied from the master branch.