[Form] Set a root block_name with '@' sign

The 'block_name' option in FormType is limited because it use the parent hieararchy in blocks names.

This commit adds the possibility to use a root block name by using the '@' sign.
i.e:
array('block_name' => '@customblock')
should create block_prefixes like 
 Array (
     0 => 'form'
     1 => '_parent_customblock'
     2 => 'customblock'
 )

As '@' is an invalid character for block name, the commit should not break old code.

| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | 
| License       | MIT
| Doc PR        |