* Improve and simplify `decl_event!`
- RawEvent is not required anymore to be written in the defintion
- Events with and without parameters are now supported everywhere
* Make `decl_event!` more flexible with the automatic naming of generic parameters
The macro will now automatically derive the name of a generic parameter
from the trait type name, if no explicit name is given.
`where Balance = <T as Trait>::Balance` can be simplified to
`where <T as Trait>::Balance`.
* Adapts to latest refactoring changes