Modify find_MAP for discrete variables

This modifies the find_MAP function to better handle discrete variables.

This is accomplished in three ways.
1. Warning the user when discrete variables are used that MAP estimates may
be inaccurate
2. Using `fmin_powell` instead of `fmin_bfgs` as this seems to be more
likely to converge on actual values
3. Convert discrete values to their floor after minimization to reflect the
support of the underlying discrete variables.
Fixed overwriting of `fmin`

Fixes overwrite of `fmin` whenever discrete variables are present
Suppress warning

Suppress the warning when a `fmin` is provided by the user, this removes the
warning message (which is somewhat annoying), in the case where it seems like
the user knows what she is doing.
Documentation grammar

Me fail english, that's unpossible!
PEP8 Changes, cleanup fmin default

fmin was set to the default value inefficiently, it is now more efficient
Update Documentation and display of warning

Updates the documentation and displays in `find_MAP` a warning only when
`disp=True` and discrete variables are specified.
PEP8 Whitespace fixes
Incorrect handling of default fmin

Accidentally overrode fmin when specified
Added discrete `find_MAP` example notebook and .py
Added find_MAP test

Added a test that tests the results of using `find_MAP` on models with discrete
stochastics.
Removed extraneous warnings in example

Removed some extraneous warnings in discrete_find_MAP.ipynb that were due to my
particular environment.
PEP8 Updates
Merge pull request #412 from bjedwards/find_MAP_warning

Addresses problems with `find_MAP` and discrete stochastic variables