Feature: Advanced Shelf Options

Overview
------------

![shelf-bg-01](https://cloud.githubusercontent.com/assets/222509/4980478/73586c82-6900-11e4-936c-381ae2341c4d.png)
![shelf-bg-02](https://cloud.githubusercontent.com/assets/222509/4980479/736c7448-6900-11e4-95af-883d949f5b24.png)
![shelf-bg-03](https://cloud.githubusercontent.com/assets/222509/4980480/738a3622-6900-11e4-8825-1e6e0076af1d.png)

This feature allows more control over header and shelf images.

Use Cases
---------------

* Allow a sticky header to always show the brand of your app
* Add full-size background images to your shelf
* Create repeatable shelf backgrounds to create bookshelves etc...
* Stretch the header image when scrolling up / bouncing the screen edge

Configuration
------------------

All configuration can be done in Baker/settings.plist:

![options](https://cloud.githubusercontent.com/assets/222509/4980553/2d2d13e2-6901-11e4-8971-5fe77135b736.png)


The following options are available:

```
CONFIGURATION KEY            | TYPE    |  DESCRIPTION
------------------------------------------------------------------------------------------------------------------------------------------
backgroundFillStyle          | String  |  One of "Pattern", "Image", "Gradient", "Color"
backgroundFillGradientStart  | String  |  HEX- Code that determines the gradient start color when backgroundFillStyle is set to "Gradient"
backgroundFillGradientStop   | String  |  HEX- Code that determines the gradient stop color when backgroundFillStyle is set to "Gradient"
backgroundFillColor          | String  |  Shelf Background color. Can be a HEX color code or "transparent"
headerSticky                 | Boolean |  Always show header when scrolling
headerStretch                | Boolean |  Stretch header image when bouncing over the screen edge
headerBackgroundColor        | String  |  Header Background color. Can be a HEX color code or "transparent"
headerImageFill              | Boolean |  If YES, Fill the whole header area with the image instead of centering it
headerHeightPadLandscape     | Number  |  Height of the header in iPad Landscape
headerHeightPadPortrait      | Number  |  Height of the header in iPhone Portrait
headerHeightPhoneLandscape   | Number  |  Height of the header in iPad Landscape
headerHeightPhonePortrait    | Number  |  Height of the header in iPhone Portrait
```

Bugs / Caveats
--------------------

* When creating bookshelf-like backgrounds, it is currently not possible to set an offset/origin of the pattern, thus it is a bit hard to have the shelf- rows aligned properly.