Yet another MVP framework