Core improvements

Pull request to integrate the changes done in the core with the rest of the project.