Merge pull request #399 from Smoothieware/edge

stable edge before multitool
update firmware.bin fir master
Merge branch 'edge'

Conflicts:
	FirmwareBin/firmware.bin
Add implementation for addMenuItem
Merge pull request #480 from wolfmanjm/upstreamedge

Add implementation for addMenuItem
make private
remove unused I2C based panels
Merge pull request #481 from wolfmanjm/cleanup/unused-i2c-panels

Cleanup/unused i2c panels
Squashed commit of the following:

commit 4eabd88eb9c53dbf45bb43b965be6c7e2d90a980
Author: stth1998 <stth1998@web.de>
Date:   Mon Aug 11 23:06:18 2014 +0200

    addition to commit bfdf666

    changed:
    src/modules/utils/panel/screens/PrepareScreen.cpp

    added initialization

commit ed824b1ad8f8532fadeace04824097a27045a473
Author: stth1998 <stth1998@web.de>
Date:   Mon Aug 11 23:01:52 2014 +0200

    addition to commit 9e0f582

    changed:
    src/modules/utils/panel/screens/CustomScreen.cpp

    initialization added

commit 9e04fe38da0fecbf8ef5373e28e179cab9e0f582
Author: stth1998 <stth1998@web.de>
Date:   Mon Aug 11 20:55:26 2014 +0200

    avoiding multiple string creation #2

    changed:
    src/modules/utils/panel/screens/CustomScreen.cpp
    src/modules/utils/panel/screens/CustomScreen.h

    std::string is 8 Bytes + heap allocations if set <-> const char * is 4 bytes + reused c string
    in line 83 in CustomScreen.cpp there is always a const char * string pointer assigend
    They do not need to be put into a string if the string's c_str() (const char*) is passed to send_command.
    the assigned ptr is sufficient, too.

    saves 4 bytes RAM (heap) (all the time) + strlen+1+padding bytes RAM (heap) (temporarily)
    also saves time for allocation and deallocation

commit bfdf666dc0b94e61f19e511284ba9dbba64ea7c3
Author: stth1998 <stth1998@web.de>
Date:   Mon Aug 11 20:50:54 2014 +0200

    avoiding multiple string creation #1

    changed:
    src/modules/utils/panel/screens/PrepareScreen.cpp
    src/modules/utils/panel/screens/PrepareScreen.h

    std::string is 8 Bytes + heap allocations if set <-> const char * is 4 bytes + reuse of c string literal
    command is only assigned in line 67 to 73 in PrepareScreen.cpp there are const char [] string literals assigend only.

    They do not need to be put into a string, if the string's c_str() (const char*) is passed to send_command.
    the assigned literal is sufficient, too.

    saves 4 bytes of RAM (heap) (all the time) + strlen+1+padding bytes RAM (heap) (temporarily)
    also saves time for allocation and deallocation when a command is executed

commit ba02d5f9c9b162e6dc58c7dae8983f1ec03769b2
Author: stth1998 <stth1998@web.de>
Date:   Mon Aug 11 19:19:29 2014 +0200

    respect memory alignment in class ControlScreen

    changed:
    src/modules/utils/panel/screens/ControlScreen.h

    putting the bool in one block with the two chars saves 4 bytes of RAM per instance due to memory alignment
Merge pull request #482 from stth1998/fix/menu_mem_savings_cleaned

Squashed commit from branch fix/menu_mem_savings
Added M204 Ennn to set extruder solo acceleration
Added flow rate and aextruder acceleration to panel menu
added firmware retract length to panel
Merge pull request #483 from wolfmanjm/features/add-E-acceleration-setting-add-to-panel

Added M204 Ennn to set extruder solo acceleration
add on_exit to panelscreen
have Configuration menu delete itself on exit (saves tons of memory)
have Extruder settings menu delete itself on exit
clean up header includes in headers for panel screens
Merge pull request #484 from wolfmanjm/features/add-on-exit-to-menus

add on_exit to panelscreen
make dtor virtual
Merge pull request #485 from wolfmanjm/upstreamedge

make dtor virtual
If no heaters presume no extruders and do not create extruder menu or temperature relted panel menu items
don't disdplay tmperatures on panel if no heaters
Merge pull request #486 from wolfmanjm/optimize/optionally-load-extruder-menu

Optimize/optionally load extruder menu
Add a probe screen to panel
shows endstops and probe status and initiates and display a G30 probe