text: Title: Faker.generate should allow calling without any kwargs
  Body: `Faker.generate` currently requires kwargs, but doesn't need them i.e. `Flaker(...).generate({})` will work just fine with most providers. The kwargs attribute should be optional. It would also be good if the kwargs were really kwargs, not just a passed-in dict.
  