BF: Window.viewPos and Window.viewScale should be tested using `is None`

Otherwise, if they've been set to be numpy arrays the test will fail with:
`ValueError: The truth value of an array with more than one element is ambiguous`
ENH: working on adding multi-page component dialogs
ENH: Jon likes flatnotebook more than wx.notebook (especially on mac)
BROKEN: various dialogs not working while I fix multi-page dialogs
BROKEN: nearly working again though!
DOCS: index.html updated
BF: ElementArrayStim initialization

Using a list or tuple for the xys argument when creating an
ElementArrayStim causes the setWithOperation function to crash. This was
due to the fact that the xys argument is not converted to a numpy array
at initialization while it is used in the setWithOperation function.
This was fixed by using the val2array function from arraytools for the
xys argument of the ElementArrayStim at initialization.
BF: setWithOperation handling None
BF: Fixed memory leak in visual.MovieStim

Two problems caused a memory leak when creating multiple MovieStim
instances across the experiment:

1.)
The line "self._player._on_eos=self._onEos" creates a reference to the
MovieStim object that prevents it from being garbage collected, that is
__del__ was never called

Solution:
set _on_eos only on playback and reset it on movie pause, stop and eos

2.)
The __del__ function did not release the memory occupied by the movie.py

Solution:
replace self._clearTextures() (which is not defined in MovieStim) by
self._player.next() (which releases the memory)
DOCS: updated docs for visual stims with summary links for attribs

Also added doc on rendering info (OpenGL, shaders etc)
ENH: many improvements to layout of Component/Loop dialogs

nameLabel not working properly in loop dlg though
Merge branch 'feature-multiPageComponents'
Merge pull request #456 from frankpapenmeier/master

BF: Fixed memory leak in visual.MovieStim
Merge pull request #455 from PieterMoors/master

BF: ElementArrayStim initialization
FF: comparing with None should use `is` for anything that might be a numpy array

numpy arrays with more than one element might raise an error using the == comparison because of its ambiguity (are we comparing the array or each element?)
BF: psychopy was crashing on startup if notFirstRun and recent update
BF: numpy.asarray was being called without numpy being imported
ENH: Restore compatibility with wxPython 2.8

The recent switch from using wxPython's Notebook widget to FlatNotebook
for code dialog broke the compatibility with wxPython 2.8 because style
FNB_NAV_BUTTONS_WHEN_NEEDED is not available there. This prevented code
dialog from showing because an AttributeError was raised. The attribute
is not needed to make code dialog work so this was fixed by checking if
it is available and only using it if this is the case (newer wxPython).
FF: Fix NameError when using keyboard component

After recent changes it was not possible to use the keyboard component
because opening the property dialog raised a NameError. This was fixed
by using an available Sizer.
FF: Fix parameter being in wrong tab in settings

In Builder's experiment settings the optional parameter for window size
was displayed in the "Basic" tab and not the "Screen" tab where related
check box is located. This was fixed by changing category to "Screen".