refactoring, use silex for base framework