introducing guice
answering to the 2nd question