Diorite: Refactoring continues, test cases and documentation are improved. Asynchronous tests were fixed. Various C warnings were fixed and marked as fatal to be caught in the future. Several classes/methods were dropped or renamed, see changelog for details.