Refactor spree_api:

* Use find_by() instead of dynamic find_by_something()
* Minor syntax cleanup
Refactor spree_core:

* Use Rails4 find_by()
Minor copyedits to README

Fixes #3551
Add missing span info tag around help text.

[Closes #3546]
Style fix for guest checkout label and radio options.

- page: admin/orders/{order.number}/customer
- issue: colon was left out of styling and 'Yes' and 'No' had no
styling nor label.

[Closes #3545]
Bumped CSS Browser Selector to 0.6.2

Also js linted.

[Closes #3543]
expand order number field size to 32
[backend] Make 'Mail Methods' link highlight as the active link when at mail_methods/edit

Fixes #2961
properly encapsulate Spree::Payment::Processing module

Fixes #3523
Reduced nested conditional to compound expression

Fixes #3527
Fetch deleted variant and product in line items

Fixes #3537
Remove update_attribute_without_callbacks in favour of update_column
Remove deprecated increment_quantity and decrement_quantity methods from LineItem
Add internal name for stock locations.

Includes light refactoring of stock_locations/index.html.erb from Ryan Bigg.

Fixes #3532
Add internal name for shipping_methods

Allows a place to store an internal name for a shipping method that helps associate the method to some backend context while still displaying a sensible name to shoppers.
Fixes brand filter and related broken specs.
Fix stub from rails 4 refactoring to fix broken controller spec.
Spree::PermittedAttributes for more extensibility

With existing `ControllerHelpers::PermittedAttributes`, adding
additional permitted attributes can only be done by overriding the
method. To be done safely in extensions, this would rely on a lot of
method aliasing.

This introduces `Spree::PermittedAttributes`, which has as module
attributes for the the accessible attributes on the spree models. This
is easily modifiable by spree applications or extensions.

    Spree::PermittedAttributes.line_item_attributes << :my_custom_attribute

`ControllerHelpers::StrongParameters` contains the same methods as
before but mostly delegates to `Spree::PermittedAttributes`. The
controller helpers also describe the allowed nested attributes.

For more complex customization (ex. permissions depending on role),
controllers can still override `permitted_attributes` with
`SimpleDelegator` (or similar) or override `permitted_*_attributes`
methods themselves to modify the attributes on a per request basis.

Thanks to Hates, Radar, huoxito, and jstrong in #spree for quick
discussion.

Fixes #3566
Default to run build.sh against postgresql.
Mention in README how you specify which database to generate dummy apps with.