refactoring, comments, readme, starting middleware