rename input.c to avoid conflicts, some small refactoring