[#382] Remove keys from extras when using convert_from_extras

If fields are moved to the top level, they should be removed from
extras. See #376 for discussion. Added test.

Basically adapt the converter for transforming this:

```
 ('extras', 1, '__extras'): {u'package_id': u'9fbddea7-31bf-4bf2-9595-ae7b5d9c1102',
                             u'revision_id': u'a13e1cf5-6ecb-4ea4-a4c2-f5c0d865e401'},
 ('extras', 1, 'deleted'): <ckan.lib.navl.dictization_functions.Missing object at 0x3c4a050>,
 ('extras', 1, u'id'): u'871cbb3c-8c93-4afa-bf2a-8f2123a7b365',
 ('extras', 1, u'key'): u'frequency',
 ('extras', 1, u'revision_timestamp'): '2013-02-22T17:33:11.577374',
 ('extras', 1, u'state'): u'active',
 ('extras', 1, u'value'): u'DAILY',
```
to this:

```
 ('frequency',): u'DAILY'
```
[#226] Implemented generic text highlighter for JSON, XML and plain text. Deleted jsonpreview.
unified indentation
[#226] Rename text highligher extension to text preview
[#226] Add missing license for highlight.js
[#226] Use github style
[#226] Make jsonp preview more resistant, add missing converter to jsonp
[#226] Rename text preview tests, add test for whether css is present
[#226] Make it easier to add new formats to the json/xml/text preview
[#628] Implement a way to dump a whole datastore resource as csv
Use normal user in datastore search tests
[#628] Add unicodecsv requirement
[#674] More descriptive Solr exceptions when indexing
Merge remote-tracking branch 'okfn/master' into 226-text-highlighting

Conflicts:
	ckanext/textpreview/tests/test_preview.py
Add IAuthenticator
Improve logic/auth/__init__.py bad logic (data_dict={})
Slight refactor of logic/auth/__init__.py for more pythonic plus store found object
Saml2 - add check_access calls to some user actions
[#674] Capture socket error as well when contacting Solr
[#652] Require resource_show permissions to read datastore resources