add input controller
add comments and initialize input controller