Relocate data definition

Move API related data definition to "leejo/data".

This is essential to make the oauth2 package free from both data
structure and database implementations.

The oauth2 package should focus on the reception logics of oauth2.
Defined and implemented provider interface

Defined a standard way to implementauth storage with service providers.