WIP features (so far: Flat BC, Constant extrap)

Constant extrapolation, such that `itp[1-x] == itp[1]` and `itp[n+x] == itp[n]` for any `x >= 0` (after interpolating a 1D array of length `n`).

Note that this doesn't necessarily mean that `itp[1] == A[1]`, since some boundary conditions invalidate that assumption; I figured it was better to enforce continuity at the domain edges:

```
using Gadfly, Interpolations
A = rand(15)
itp = Interpolation(A, Quadratic(ExtendInner(), OnCell()), ExtrapConstant())
plot(
    layer(x=[1:15], y=A, Geom.point),
    layer(x=[-1:.1:17], y=[itp[x] for x in -1:.1:17], Geom.path)
)
```

![extrap-constant](https://cloud.githubusercontent.com/assets/1550920/5158834/0d5f688a-734c-11e4-85c5-71f865ea6b14.png)